#\r
import re\r
import os.path\r
-from string import strip\r
import Logger.Log as Logger\r
import Library.DataType as DataType\r
from Logger.ToolError import FORMAT_INVALID\r
#\r
#\r
def GetSplitValueList(String, SplitTag=DataType.TAB_VALUE_SPLIT, MaxSplit= -1):\r
- return map(lambda l: l.strip(), String.split(SplitTag, MaxSplit))\r
+ return list(map(lambda l: l.strip(), String.split(SplitTag, MaxSplit)))\r
\r
## MergeArches\r
#\r
#\r
LineList[1] = CleanString(LineList[1], CommentCharacter)\r
if ValueSplitFlag:\r
- Value = map(strip, LineList[1].split(ValueSplitCharacter))\r
+ Value = list(map(lambda x: x.strip(), LineList[1].split(ValueSplitCharacter)))\r
else:\r
Value = CleanString(LineList[1], CommentCharacter).splitlines()\r
\r
# @param StringList: A list for strings to be converted\r
#\r
def ConvertToSqlString(StringList):\r
- return map(lambda s: s.replace("'", "''"), StringList)\r
+ return list(map(lambda s: s.replace("'", "''"), StringList))\r
\r
## Convert To Sql String\r
#\r
# @param String: the source string\r
#\r
def StringArrayLength(String):\r
- if String.startswith('L"'):\r
+ if isinstance(String, unicode):\r
+ return (len(String) + 1) * 2 + 1\r
+ elif String.startswith('L"'):\r
return (len(String) - 3 + 1) * 2\r
elif String.startswith('"'):\r
return (len(String) - 2 + 1)\r
def IsMatchArch(Arch1, Arch2):\r
if 'COMMON' in Arch1 or 'COMMON' in Arch2:\r
return True\r
- if isinstance(Arch1, basestring) and isinstance(Arch2, basestring):\r
- if Arch1 == Arch2:\r
- return True\r
-\r
- if isinstance(Arch1, basestring) and isinstance(Arch2, list):\r
- return Arch1 in Arch2\r
+ try:\r
+ if isinstance(Arch1, list) and isinstance(Arch2, list):\r
+ for Item1 in Arch1:\r
+ for Item2 in Arch2:\r
+ if Item1 == Item2:\r
+ return True\r
\r
- if isinstance(Arch2, basestring) and isinstance(Arch1, list):\r
- return Arch2 in Arch1\r
+ elif isinstance(Arch1, list):\r
+ return Arch2 in Arch1\r
\r
- if isinstance(Arch1, list) and isinstance(Arch2, list):\r
- for Item1 in Arch1:\r
- for Item2 in Arch2:\r
- if Item1 == Item2:\r
- return True\r
+ elif isinstance(Arch2, list):\r
+ return Arch1 in Arch2\r
\r
- return False\r
+ else:\r
+ if Arch1 == Arch2:\r
+ return True\r
+ except:\r
+ return False\r
\r
# Search all files in FilePath to find the FileName with the largest index\r
# Return the FileName with index +1 under the FilePath\r