【发布时间】:2014-03-24 17:21:10
【问题描述】:
我在使用正则表达式时遇到问题。
我有:
urls = re.findall(r'href=[\'"]?([^\'" >]+)', line)
print urls
这给了我:
['production_r1499.log']
['production_r1499.log-20140323']
['production_r1499.log-20140323.gz']
我只对 .log 文件感兴趣。如何让正则表达式只匹配这个?
或者。 有没有类似于这种方法的方法?
if str(urls).endswith('.log'):
很高兴并感谢您的建议!
【问题讨论】:
-
line变量的值是多少?是html字符串吗? -
查看输入字符串会有所帮助
-
没有看到输入很难说,但你有没有试过使用
$,这是一个匹配字符串结尾的锚? -
(?!['])[\w]+.(log)(?<![-'])将匹配这些样本的日志文件部分。抓取一个字符串,后跟一个 ' 之前和 ' 或 - 之后的 .log。
标签: python regex string-matching