我正试图从结尾列表中获取文件名,如下所示:
final count: {'.pem': 5027, '__base__': 434, '.rb': 62341, '/AUTHORS': 1358, '.sty': 859, '.gitignore': 193,...}
我的正则表达式如下:
p = re.compile(r"'([\W]+)(.*?)'")
除了'__base__'
之外,它可以正常工作,我在'__base__'
而不是p = re.compile(r"'([\W]+|\_+)(.*?)'")
p = re.compile(r"'([\W]+|_+)(.*?)'")
而不是基数'我希望由于下划线是一个像字的字符。我试过了:
p = re.compile(r"'([\W]+)|(_+)(.*?)'")
和
.apk
但没有效果。这样做的正确方法是什么?谢谢
答案 0 :(得分:2)
尝试添加克拉以对正则表达式进行例外处理
p = re.compile(r"'([\W^_]+)(.*?)'")
当^
在外匹配组(方括号)时,它表示字符串的开头或新行的开头。当它在里面匹配的组时,它意味着"否定"或者"不是"。
答案 1 :(得分:1)
p = re.compile(r"'([^a-zA-Z0-9]+)(.*?)'")
你可以简单地使用它。