Python 正则表达式 使用便签

    xiaoxiao2022-06-27  154

    引入变量

    pattern_1 = re.compile(r''+ str(tblName) + '\.(?P<fieldname>[\w\d_]+)')

     

    匹配换行: 第一种方法:为了修正这个问题,修改模式字符串,增加对换行的支持。比如:  添加对换行符的支持,(?:.|\n)指定了一个非捕获组(即,这个组只做匹配但不捕获结果,也不会分配组号)

    第二种方法:re.DOTALL  re.compile()函数接受一个标志参数叫re.DOTALL,在这里非常有用,它可以让正则表达式中的点(.)匹配包括换行符在内的任意字符。

     

    匹配指定字符串:

    pattern_fieldMem = re.compile(r'xxx(?P<offset>TBA_.+?),\s+(?P<pos>\d+?),\s+(?P<width>\d+?)\);') def GetFuncContextFieldsList(strIn): fieldsList = [] items = re.finditer(pattern_fieldMem, strIn) for match in items: str = match.group(0) offset = match.groupdict()['offset'] pos = match.groupdict()['pos'] width = match.groupdict()['width']

    最新回复(0)