python27 无法成功正则提取字符串


import re


str = """
Server: nginx/1.10.1
Date: Thu, 16 Feb 2017 15:49:38 GMT
Content-Type: text/html; charset=UTF-8
Transfer-Encoding: chunked
Connection: close
"""
m = re.match(r'charset=([\S]+)',re.I)
print m

输出的是None
我需要提取出charset,整个charset 可能是不会设置的,但是如果有就提取。但第一步就失败了

阅读 2.3k
3 个回答

你可以先试试看正则表达式加m开关,表示可以换行匹配(py下我忘记语法是什么了,你百度一下看看)

如果第一个方法失败,那么正则表达式

r'charset=([\S]+)'

写成

r'charset=([\w]+)'

试试看

我对python也不熟,感觉应该是这些小细节问题。

你该用 re.search,re.match 是从头匹配的

[\S]能转义? 应该去掉[]

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进