Python 百分比符号之间大写和下划线的正则表达式
Regex从来都不是我的强项。在python中,我试图构建一个与子字符串匹配的表达式,例如: %匹配% %匹配1% $这是一场比赛% 它将由%MATCH%或%like\u this%提取 我最终得出了这个结论(逻辑上,但似乎不起作用):Python 百分比符号之间大写和下划线的正则表达式,python,regex,Python,Regex,Regex从来都不是我的强项。在python中,我试图构建一个与子字符串匹配的表达式,例如: %匹配% %匹配1% $这是一场比赛% 它将由%MATCH%或%like\u this%提取 我最终得出了这个结论(逻辑上,但似乎不起作用):%[A-Z0-9.]*$% 那么我在这方面哪里出了问题呢?您可以使用这样一个简单的正则表达式: [%$]\w+[%$] <-- Notice I put $ because of your sample 如果您只希望匹配%以内的内容,还可以使用: %.
%[A-Z0-9.]*$%
那么我在这方面哪里出了问题呢?您可以使用这样一个简单的正则表达式:
[%$]\w+[%$] <-- Notice I put $ because of your sample
如果您只希望匹配%以内的内容,还可以使用:
%.+?%
Python代码
import re
p = re.compile(ur'[%$]\w+[%$]')
test_str = u"%MATCH%\n\n%MATCH_1%\n\n$THIS_IS_A_MATCH%"
re.findall(p, test_str)
顺便说一句,正则表达式的问题如下:
%[A-Z0-9_]*$%
^--- Remove this dolar sign
%[A-Z0-9_]*$%
^--- Remove this dolar sign