Regular expression: how to match a string containing “\n” (newline)?

前端 未结 2 852
长情又很酷
长情又很酷 2020-12-17 18:14

I\'m trying to dump data from a SQL export file with regular expression. To match the field of post content, I use \'(?P.*?)\'. It works fine mos

相关标签:
2条回答
  • 2020-12-17 18:35

    You should use DOTALL option:

    >>> re.findall("'(?P<content>.*?)'","'<p>something, \n something else</p>'", re.DOTALL)
    ['<p>something, \n something else</p>']
    

    See this.

    0 讨论(0)
  • 2020-12-17 18:53

    You need the Dotall modifier, to make the dot also match newline characters.

    re.S
    re.DOTALL
    Make the '.' special character match any character at all, including a newline; without this flag, '.' will match anything except a newline.

    See it here on docs.python.org

    0 讨论(0)
提交回复
热议问题