RecordSet = EccGlobalData.gDb.TblInf.Exec(SqlCommand)\r
for Record in RecordSet:\r
Path = Record[1]\r
- Path = Path.upper().replace('\X64', '').replace('\IA32', '').replace('\EBC', '').replace('\IPF', '').replace('\ARM', '')\r
+ Path = Path.upper().replace(r'\X64', '').replace(r'\IA32', '').replace(r'\EBC', '').replace(r'\IPF', '').replace(r'\ARM', '')\r
if Path in InfPathList:\r
if not EccGlobalData.gException.IsException(ERROR_META_DATA_FILE_CHECK_MODULE_FILE_NO_USE, Record[2]):\r
EccGlobalData.gDb.TblReport.Insert(ERROR_META_DATA_FILE_CHECK_MODULE_FILE_NO_USE, OtherMsg="The source file [%s] is existing in module directory but it is not described in INF file." % (Record[2]), BelongsToTable='File', BelongsToItem=Record[0])\r
# test that our dict and out class still match in contents.\r
#\r
if __name__ == '__main__':\r
- myconfig = Configuration("BaseTools\Source\Python\Ecc\config.ini")\r
+ myconfig = Configuration(r"BaseTools\Source\Python\Ecc\config.ini")\r
for each in myconfig.__dict__:\r
if each == "Filename":\r
continue\r
\r
if EccGlobalData.gConfig.UniCheckPCDInfo == '1' or EccGlobalData.gConfig.UniCheckAll == '1' or EccGlobalData.gConfig.CheckAll == '1':\r
# check Description, Prompt information\r
- PatternDesc = re.compile('##\s*([\x21-\x7E\s]*)', re.S)\r
- PatternPrompt = re.compile('#\s+@Prompt\s+([\x21-\x7E\s]*)', re.S)\r
+ PatternDesc = re.compile(r'##\s*([\x21-\x7E\s]*)', re.S)\r
+ PatternPrompt = re.compile(r'#\s+@Prompt\s+([\x21-\x7E\s]*)', re.S)\r
Description = None\r
Prompt = None\r
# check @ValidRange, @ValidList and @Expression format valid\r
ErrorCodeValid = '0x0 <= %s <= 0xFFFFFFFF'\r
- PatternValidRangeIn = '(NOT)?\s*(\d+\s*-\s*\d+|0[xX][a-fA-F0-9]+\s*-\s*0[xX][a-fA-F0-9]+|LT\s*\d+|LT\s*0[xX][a-fA-F0-9]+|GT\s*\d+|GT\s*0[xX][a-fA-F0-9]+|LE\s*\d+|LE\s*0[xX][a-fA-F0-9]+|GE\s*\d+|GE\s*0[xX][a-fA-F0-9]+|XOR\s*\d+|XOR\s*0[xX][a-fA-F0-9]+|EQ\s*\d+|EQ\s*0[xX][a-fA-F0-9]+)'\r
- PatternValidRng = re.compile('^' + '(NOT)?\s*' + PatternValidRangeIn + '$')\r
+ PatternValidRangeIn = r'(NOT)?\s*(\d+\s*-\s*\d+|0[xX][a-fA-F0-9]+\s*-\s*0[xX][a-fA-F0-9]+|LT\s*\d+|LT\s*0[xX][a-fA-F0-9]+|GT\s*\d+|GT\s*0[xX][a-fA-F0-9]+|LE\s*\d+|LE\s*0[xX][a-fA-F0-9]+|GE\s*\d+|GE\s*0[xX][a-fA-F0-9]+|XOR\s*\d+|XOR\s*0[xX][a-fA-F0-9]+|EQ\s*\d+|EQ\s*0[xX][a-fA-F0-9]+)'\r
+ PatternValidRng = re.compile('^' + r'(NOT)?\s*' + PatternValidRangeIn + '$')\r
for Comment in self._Comments:\r
Comm = Comment[0].strip()\r
if not Comm:\r
def CheckKeyValid(self, Key, Contents=None):\r
if not Contents:\r
Contents = self.FileIn\r
- KeyPattern = re.compile('#string\s+%s\s+.*?#language.*?".*?"' % Key, re.S)\r
+ KeyPattern = re.compile(r'#string\s+%s\s+.*?#language.*?".*?"' % Key, re.S)\r
if KeyPattern.search(Contents):\r
return True\r
return False\r
return p\r
\r
def GetTypedefFuncPointerPattern():\r
- p = re.compile('[_\w\s]*\([\w\s]*\*+\s*[_\w]+\s*\)\s*\(.*\)', re.DOTALL)\r
+ p = re.compile(r'[_\w\s]*\([\w\s]*\*+\s*[_\w]+\s*\)\s*\(.*\)', re.DOTALL)\r
return p\r
\r
def GetDB():\r
gEFI_SOURCE = ''\r
gEDK_SOURCE = ''\r
gWORKSPACE = ''\r
-gSHELL_INF = 'Application\Shell'\r
+gSHELL_INF = r'Application\Shell'\r
gMAKE_FILE = ''\r
gDSC_FILE = ''\r
gFV_FILE = []\r
# @return p: the pattern of function pointer\r
#\r
def GetTypedefFuncPointerPattern():\r
- p = re.compile('[_\w\s]*\([\w\s]*\*+\s*[_\w]+\s*\)\s*\(.*\)', re.DOTALL)\r
+ p = re.compile(r'[_\w\s]*\([\w\s]*\*+\s*[_\w]+\s*\)\s*\(.*\)', re.DOTALL)\r
return p\r
\r
## GetDB() method\r
#\r
# To replace Macro\r
#\r
- MACRO_PATTERN = '[\t\s]*\$\([A-Z][_A-Z0-9]*\)'\r
+ MACRO_PATTERN = r'[\t\s]*\$\([A-Z][_A-Z0-9]*\)'\r
MatchedStrs = re.findall(MACRO_PATTERN, Comment)\r
for MatchedStr in MatchedStrs:\r
if MatchedStr:\r
## _ExprBase\r
#\r
class _ExprBase:\r
- HEX_PATTERN = '[\t\s]*0[xX][a-fA-F0-9]+'\r
- INT_PATTERN = '[\t\s]*[0-9]+'\r
- MACRO_PATTERN = '[\t\s]*\$\(([A-Z][_A-Z0-9]*)\)'\r
+ HEX_PATTERN = r'[\t\s]*0[xX][a-fA-F0-9]+'\r
+ INT_PATTERN = r'[\t\s]*[0-9]+'\r
+ MACRO_PATTERN = r'[\t\s]*\$\(([A-Z][_A-Z0-9]*)\)'\r
PCD_PATTERN = \\r
- '[\t\s]*[_a-zA-Z][a-zA-Z0-9_]*[\t\s]*\.[\t\s]*[_a-zA-Z][a-zA-Z0-9_]*'\r
- QUOTED_PATTERN = '[\t\s]*L?"[^"]*"'\r
- BOOL_PATTERN = '[\t\s]*(true|True|TRUE|false|False|FALSE)'\r
+ r'[\t\s]*[_a-zA-Z][a-zA-Z0-9_]*[\t\s]*\.[\t\s]*[_a-zA-Z][a-zA-Z0-9_]*'\r
+ QUOTED_PATTERN = r'[\t\s]*L?"[^"]*"'\r
+ BOOL_PATTERN = r'[\t\s]*(true|True|TRUE|false|False|FALSE)'\r
def __init__(self, Token):\r
self.Token = Token\r
self.Index = 0\r
## _ValidRangeExpressionParser\r
#\r
class _ValidRangeExpressionParser(_ExprBase):\r
- INT_RANGE_PATTERN = '[\t\s]*[0-9]+[\t\s]*-[\t\s]*[0-9]+'\r
+ INT_RANGE_PATTERN = r'[\t\s]*[0-9]+[\t\s]*-[\t\s]*[0-9]+'\r
HEX_RANGE_PATTERN = \\r
- '[\t\s]*0[xX][a-fA-F0-9]+[\t\s]*-[\t\s]*0[xX][a-fA-F0-9]+'\r
+ r'[\t\s]*0[xX][a-fA-F0-9]+[\t\s]*-[\t\s]*0[xX][a-fA-F0-9]+'\r
def __init__(self, Token):\r
_ExprBase.__init__(self, Token)\r
self.Parens = 0\r
## _ValidListExpressionParser\r
#\r
class _ValidListExpressionParser(_ExprBase):\r
- VALID_LIST_PATTERN = '(0[xX][0-9a-fA-F]+|[0-9]+)([\t\s]*,[\t\s]*(0[xX][0-9a-fA-F]+|[0-9]+))*'\r
+ VALID_LIST_PATTERN = r'(0[xX][0-9a-fA-F]+|[0-9]+)([\t\s]*,[\t\s]*(0[xX][0-9a-fA-F]+|[0-9]+))*'\r
def __init__(self, Token):\r
_ExprBase.__init__(self, Token)\r
self.NUM = 1\r
def CheckGuidRegFormat(GuidValue):\r
## Regular expression used to find out register format of GUID\r
#\r
- RegFormatGuidPattern = re.compile("^\s*([0-9a-fA-F]){8}-"\r
+ RegFormatGuidPattern = re.compile(r"^\s*([0-9a-fA-F]){8}-"\r
"([0-9a-fA-F]){4}-"\r
"([0-9a-fA-F]){4}-"\r
"([0-9a-fA-F]){4}-"\r
- "([0-9a-fA-F]){12}\s*$")\r
+ r"([0-9a-fA-F]){12}\s*$")\r
\r
if RegFormatGuidPattern.match(GuidValue):\r
return True\r
ST.ERR_FILE_OPEN_FAILURE,\r
File=FullFileName)\r
\r
- ReFileGuidPattern = re.compile("^\s*FILE_GUID\s*=.*$")\r
- ReVerStringPattern = re.compile("^\s*VERSION_STRING\s*=.*$")\r
+ ReFileGuidPattern = re.compile(r"^\s*FILE_GUID\s*=.*$")\r
+ ReVerStringPattern = re.compile(r"^\s*VERSION_STRING\s*=.*$")\r
\r
FileLinesList = ProcessLineExtender(FileLinesList)\r
\r
#\r
# Check if the file name is valid according to the DEC and INF specification\r
#\r
- Pattern = '[a-zA-Z0-9_][a-zA-Z0-9_\-\.]*'\r
+ Pattern = r'[a-zA-Z0-9_][a-zA-Z0-9_\-\.]*'\r
FileName = Path.replace(Suffix, '')\r
InvalidCh = re.sub(Pattern, '', FileName)\r
if InvalidCh:\r
#\r
# Regular expression for matching macro used in DSC/DEC/INF file inclusion\r
#\r
-gMACRO_PATTERN = re.compile("\$\(([_A-Z][_A-Z0-9]*)\)", re.UNICODE)\r
+gMACRO_PATTERN = re.compile(r"\$\(([_A-Z][_A-Z0-9]*)\)", re.UNICODE)\r
\r
## GetSplitValueList\r
#\r
from Library.Misc import CheckGuidRegFormat\r
\r
TOOL_NAME = 'DecParser'\r
-VERSION_PATTERN = '[0-9]+(\.[0-9]+)?'\r
+VERSION_PATTERN = r'[0-9]+(\.[0-9]+)?'\r
CVAR_PATTERN = '[_a-zA-Z][a-zA-Z0-9_]*'\r
PCD_TOKEN_PATTERN = '(0[xX]0*[a-fA-F0-9]{1,8})|([0-9]+)'\r
MACRO_PATTERN = '[A-Z][_A-Z0-9]*'\r
#\r
# To deal with library instance specified by GUID and version\r
#\r
- RegFormatGuidPattern = re.compile("\s*([0-9a-fA-F]){8}-"\r
+ RegFormatGuidPattern = re.compile(r"\s*([0-9a-fA-F]){8}-"\r
"([0-9a-fA-F]){4}-"\r
"([0-9a-fA-F]){4}-"\r
"([0-9a-fA-F]){4}-"\r
- "([0-9a-fA-F]){12}\s*")\r
- VersionPattern = re.compile('[\t\s]*\d+(\.\d+)?[\t\s]*')\r
+ r"([0-9a-fA-F]){12}\s*")\r
+ VersionPattern = re.compile(r'[\t\s]*\d+(\.\d+)?[\t\s]*')\r
GuidMatchedObj = RegFormatGuidPattern.search(String)\r
\r
if String.upper().startswith('GUID') and GuidMatchedObj and 'Version' in String:\r
FileLinesList = GetFileLineContent(String, WorkSpace, LineNo, OriginalString)\r
\r
\r
- ReFindFileGuidPattern = re.compile("^\s*FILE_GUID\s*=.*$")\r
- ReFindVerStringPattern = re.compile("^\s*VERSION_STRING\s*=.*$")\r
+ ReFindFileGuidPattern = re.compile(r"^\s*FILE_GUID\s*=.*$")\r
+ ReFindVerStringPattern = re.compile(r"^\s*VERSION_STRING\s*=.*$")\r
\r
for Line in FileLinesList:\r
if ReFindFileGuidPattern.match(Line):\r
\r
FileLinesList = GetFileLineContent(FileNameString, WorkSpace, LineNo, '')\r
\r
- RePackageHeader = re.compile('^\s*\[Packages.*\].*$')\r
- ReDefineHeader = re.compile('^\s*\[Defines].*$')\r
+ RePackageHeader = re.compile(r'^\s*\[Packages.*\].*$')\r
+ ReDefineHeader = re.compile(r'^\s*\[Defines].*$')\r
\r
PackageHederFlag = False\r
DefineHeaderFlag = False\r
FileLinesList = InfFileObj.readlines()\r
FileLinesList = ProcessLineExtender(FileLinesList)\r
\r
- ReFindFileGuidPattern = re.compile("^\s*FILE_GUID\s*=.*$")\r
- ReFindVerStringPattern = re.compile("^\s*VERSION_STRING\s*=.*$")\r
+ ReFindFileGuidPattern = re.compile(r"^\s*FILE_GUID\s*=.*$")\r
+ ReFindVerStringPattern = re.compile(r"^\s*VERSION_STRING\s*=.*$")\r
\r
for Line in FileLinesList:\r
if ReFindFileGuidPattern.match(Line):\r
\r
TempArch = GetSplitValueList(TempArch, '(', 1)[0]\r
\r
- ArchList = re.split('\s+', TempArch)\r
+ ArchList = re.split(r'\s+', TempArch)\r
NewArchList = []\r
for Arch in ArchList:\r
if IsValidArch(Arch):\r
return Content\r
else:\r
for Macro in MacroUsed:\r
- gQuotedMacro = re.compile(".*\".*\$\(%s\).*\".*"%(Macro))\r
+ gQuotedMacro = re.compile(r".*\".*\$\(%s\).*\".*"%(Macro))\r
if not gQuotedMacro.match(Content):\r
#\r
# Still have MACROs can't be expanded.\r
if not FileLineList:\r
return False\r
\r
- ReIsSourcesSection = re.compile("^\s*\[Sources.*\]\s.*$", re.IGNORECASE)\r
- ReIsBinarySection = re.compile("^\s*\[Binaries.*\]\s.*$", re.IGNORECASE)\r
+ ReIsSourcesSection = re.compile(r"^\s*\[Sources.*\]\s.*$", re.IGNORECASE)\r
+ ReIsBinarySection = re.compile(r"^\s*\[Binaries.*\]\s.*$", re.IGNORECASE)\r
BinarySectionFoundFlag = False\r
\r
for Line in FileLineList:\r
# @return Flag\r
#\r
def IsLibInstanceInfo(String):\r
- ReIsLibInstance = re.compile("^\s*##\s*@LIB_INSTANCES\s*$")\r
+ ReIsLibInstance = re.compile(r"^\s*##\s*@LIB_INSTANCES\s*$")\r
if ReIsLibInstance.match(String):\r
return True\r
else:\r
# @return Flag\r
#\r
def IsAsBuildOptionInfo(String):\r
- ReIsAsBuildInstance = re.compile("^\s*##\s*@AsBuilt\s*$")\r
+ ReIsAsBuildInstance = re.compile(r"^\s*##\s*@AsBuilt\s*$")\r
if ReIsAsBuildInstance.match(String):\r
return True\r
else:\r
#\r
# deal with "NOT EQ", "NOT LT", "NOT GT", "NOT LE", "NOT GE", "NOT NOT"\r
#\r
- NOTNOT_Pattern = '[\t\s]*NOT[\t\s]+NOT[\t\s]*'\r
- NOTGE_Pattern = '[\t\s]*NOT[\t\s]+GE[\t\s]*'\r
- NOTLE_Pattern = '[\t\s]*NOT[\t\s]+LE[\t\s]*'\r
- NOTGT_Pattern = '[\t\s]*NOT[\t\s]+GT[\t\s]*'\r
- NOTLT_Pattern = '[\t\s]*NOT[\t\s]+LT[\t\s]*'\r
- NOTEQ_Pattern = '[\t\s]*NOT[\t\s]+EQ[\t\s]*'\r
+ NOTNOT_Pattern = r'[\t\s]*NOT[\t\s]+NOT[\t\s]*'\r
+ NOTGE_Pattern = r'[\t\s]*NOT[\t\s]+GE[\t\s]*'\r
+ NOTLE_Pattern = r'[\t\s]*NOT[\t\s]+LE[\t\s]*'\r
+ NOTGT_Pattern = r'[\t\s]*NOT[\t\s]+GT[\t\s]*'\r
+ NOTLT_Pattern = r'[\t\s]*NOT[\t\s]+LT[\t\s]*'\r
+ NOTEQ_Pattern = r'[\t\s]*NOT[\t\s]+EQ[\t\s]*'\r
ReplaceValue = re.compile(NOTNOT_Pattern).sub('', ReplaceValue)\r
ReplaceValue = re.compile(NOTLT_Pattern).sub('x >= ', ReplaceValue)\r
ReplaceValue = re.compile(NOTGT_Pattern).sub('x <= ', ReplaceValue)\r
if ReplaceValue.find('!') >= 0 and ReplaceValue[ReplaceValue.index('!') + 1] != '=':\r
ReplaceValue = ReplaceValue.replace('!', ' not ')\r
if '.' in ReplaceValue:\r
- Pattern = '[a-zA-Z0-9]{1,}\.[a-zA-Z0-9]{1,}'\r
+ Pattern = r'[a-zA-Z0-9]{1,}\.[a-zA-Z0-9]{1,}'\r
MatchedList = re.findall(Pattern, ReplaceValue)\r
for MatchedItem in MatchedList:\r
if MatchedItem not in self.PcdDefaultValueDict:\r
#\r
# Delete the 'L' prefix of a quoted string, this operation is for eval()\r
#\r
- QUOTED_PATTERN = '[\t\s]*L?"[^"]*"'\r
+ QUOTED_PATTERN = r'[\t\s]*L?"[^"]*"'\r
QuotedMatchedObj = re.search(QUOTED_PATTERN, Expression)\r
if QuotedMatchedObj:\r
MatchedStr = QuotedMatchedObj.group().strip()\r
#\r
# Delete the 'L' prefix of a quoted string, this operation is for eval()\r
#\r
- QUOTED_PATTERN = '[\t\s]*L?"[^"]*"'\r
+ QUOTED_PATTERN = r'[\t\s]*L?"[^"]*"'\r
QuotedMatchedObj = re.search(QUOTED_PATTERN, DefaultValue)\r
if QuotedMatchedObj:\r
MatchedStr = QuotedMatchedObj.group().strip()\r
('[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}'\r
'-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}',\r
ST.ERR_GUID_VALUE % Value),\r
- 'Version' : ('[0-9]+(\.[0-9]+)?', ST.ERR_VERSION_VALUE % \\r
+ 'Version' : (r'[0-9]+(\.[0-9]+)?', ST.ERR_VERSION_VALUE % \\r
(Key, Value)),\r
- 'XmlSpecification' : ('1\.1', ST.ERR_VERSION_XMLSPEC % Value)\r
+ 'XmlSpecification' : (r'1\.1', ST.ERR_VERSION_XMLSPEC % Value)\r
}\r
if Key not in ValidateMap:\r
return True, ''\r
def TransferValidRange2Expr(self, TokenSpaceGuidCName, CName, ValidRange):\r
if self.Expression:\r
pass\r
- INT_RANGE_PATTERN1 = '[\t\s]*[0-9]+[\t\s]*-[\t\s]*[0-9]+'\r
- INT_RANGE_PATTERN2 = '[\t\s]*(LT|GT|LE|GE|XOR|EQ)[\t\s]+\d+[\t\s]*'\r
+ INT_RANGE_PATTERN1 = r'[\t\s]*[0-9]+[\t\s]*-[\t\s]*[0-9]+'\r
+ INT_RANGE_PATTERN2 = r'[\t\s]*(LT|GT|LE|GE|XOR|EQ)[\t\s]+\d+[\t\s]*'\r
HEX_RANGE_PATTERN1 = \\r
- '[\t\s]*0[xX][a-fA-F0-9]+[\t\s]*-[\t\s]*0[xX][a-fA-F0-9]+'\r
- HEX_RANGE_PATTERN2 = '[\t\s]*(LT|GT|LE|GE|XOR|EQ)[\t\s]+0[xX][a-fA-F0-9]+[\t\s]*'\r
+ r'[\t\s]*0[xX][a-fA-F0-9]+[\t\s]*-[\t\s]*0[xX][a-fA-F0-9]+'\r
+ HEX_RANGE_PATTERN2 = r'[\t\s]*(LT|GT|LE|GE|XOR|EQ)[\t\s]+0[xX][a-fA-F0-9]+[\t\s]*'\r
IntMatch1 = re.compile(INT_RANGE_PATTERN1)\r
IntMatch2 = re.compile(INT_RANGE_PATTERN2)\r
HexMatch1 = re.compile(HEX_RANGE_PATTERN1)\r
pass\r
\r
PCD_PATTERN = \\r
- '[\t\s]*[_a-zA-Z][a-zA-Z0-9_]*[\t\s]*\.[\t\s]*[_a-zA-Z][a-zA-Z0-9_]*[\t\s]*'\r
+ r'[\t\s]*[_a-zA-Z][a-zA-Z0-9_]*[\t\s]*\.[\t\s]*[_a-zA-Z][a-zA-Z0-9_]*[\t\s]*'\r
IntPattern1 = \\r
- '[\t\s]*\([\t\s]*'+PCD_PATTERN+'[\t\s]+GE[\t\s]+\d+[\t\s]*\)[\t\s]+AND[\t\s]+\([\t\s]*'+\\r
- PCD_PATTERN+'[\t\s]+LE[\t\s]+\d+[\t\s]*\)'\r
+ r'[\t\s]*\([\t\s]*'+PCD_PATTERN+r'[\t\s]+GE[\t\s]+\d+[\t\s]*\)[\t\s]+AND[\t\s]+\([\t\s]*'+\\r
+ PCD_PATTERN+r'[\t\s]+LE[\t\s]+\d+[\t\s]*\)'\r
IntPattern1 = IntPattern1.replace(' ', '')\r
- IntPattern2 = '[\t\s]*'+PCD_PATTERN+'[\t\s]+(LT|GT|LE|GE|XOR|EQ)[\t\s]+\d+[\t\s]*'\r
+ IntPattern2 = r'[\t\s]*'+PCD_PATTERN+r'[\t\s]+(LT|GT|LE|GE|XOR|EQ)[\t\s]+\d+[\t\s]*'\r
\r
HexPattern1 = \\r
- '[\t\s]*\([\t\s]*'+PCD_PATTERN+'[\t\s]+GE[\t\s]+0[xX][0-9a-fA-F]+[\t\s]*\)[\t\s]+AND[\t\s]+\([\t\s]*'+\\r
- PCD_PATTERN+'[\t\s]+LE[\t\s]+0[xX][0-9a-fA-F]+[\t\s]*\)'\r
+ r'[\t\s]*\([\t\s]*'+PCD_PATTERN+r'[\t\s]+GE[\t\s]+0[xX][0-9a-fA-F]+[\t\s]*\)[\t\s]+AND[\t\s]+\([\t\s]*'+\\r
+ PCD_PATTERN+r'[\t\s]+LE[\t\s]+0[xX][0-9a-fA-F]+[\t\s]*\)'\r
HexPattern1 = HexPattern1.replace(' ', '')\r
- HexPattern2 = '[\t\s]*'+PCD_PATTERN+'[\t\s]+(LT|GT|LE|GE|XOR|EQ)[\t\s]+0[xX][0-9a-zA-Z]+[\t\s]*'\r
+ HexPattern2 = r'[\t\s]*'+PCD_PATTERN+r'[\t\s]+(LT|GT|LE|GE|XOR|EQ)[\t\s]+0[xX][0-9a-zA-Z]+[\t\s]*'\r
\r
#\r
# Do the Hex1 conversion\r
#\r
# To match items on both sides of '-'\r
#\r
- RangeItemList = re.compile('[\t\s]*0[xX][0-9a-fA-F]+[\t\s]*').findall(HexMatchedItem)\r
+ RangeItemList = re.compile(r'[\t\s]*0[xX][0-9a-fA-F]+[\t\s]*').findall(HexMatchedItem)\r
if RangeItemList and len(RangeItemList) == 2:\r
HexRangeDict[HexMatchedItem] = RangeItemList\r
\r
#\r
# To match items on both sides of '-'\r
#\r
- RangeItemList = re.compile('[\t\s]*\d+[\t\s]*').findall(MatchedItem)\r
+ RangeItemList = re.compile(r'[\t\s]*\d+[\t\s]*').findall(MatchedItem)\r
if RangeItemList and len(RangeItemList) == 2:\r
IntRangeDict[MatchedItem] = RangeItemList\r
\r
#\r
XmlContent = \\r
re.sub(r'[\s\r\n]*SupArchList[\s\r\n]*=[\s\r\n]*"[\s\r\n]*COMMON'\r
- '[\s\r\n]*"', '', XmlContent)\r
+ r'[\s\r\n]*"', '', XmlContent)\r
XmlContent = \\r
re.sub(r'[\s\r\n]*SupArchList[\s\r\n]*=[\s\r\n]*"[\s\r\n]*common'\r
- '[\s\r\n]*"', '', XmlContent)\r
+ r'[\s\r\n]*"', '', XmlContent)\r
#\r
# Remove <SupArchList> COMMON </SupArchList>\r
#\r
XmlContent = \\r
re.sub(r'[\s\r\n]*<SupArchList>[\s\r\n]*COMMON[\s\r\n]*'\r
- '</SupArchList>[\s\r\n]*', '', XmlContent)\r
+ r'</SupArchList>[\s\r\n]*', '', XmlContent)\r
\r
#\r
# Remove <SupArchList> common </SupArchList>\r
#\r
XmlContent = \\r
re.sub(r'[\s\r\n]*<SupArchList>[\s\r\n]*'\r
- 'common[\s\r\n]*</SupArchList>[\s\r\n]*', '', XmlContent)\r
+ r'common[\s\r\n]*</SupArchList>[\s\r\n]*', '', XmlContent)\r
\r
#\r
# Remove SupModList="COMMON" or "common"\r
#\r
XmlContent = \\r
re.sub(r'[\s\r\n]*SupModList[\s\r\n]*=[\s\r\n]*"[\s\r\n]*COMMON'\r
- '[\s\r\n]*"', '', XmlContent)\r
+ r'[\s\r\n]*"', '', XmlContent)\r
XmlContent = \\r
re.sub(r'[\s\r\n]*SupModList[\s\r\n]*=[\s\r\n]*"[\s\r\n]*common'\r
- '[\s\r\n]*"', '', XmlContent)\r
+ r'[\s\r\n]*"', '', XmlContent)\r
\r
return XmlContent\r
\r