Python正则表达式混乱

2024-04-25 18:50:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经试着调试了一段时间,但我似乎没有取得任何进展。你知道吗

为什么下面的正则表达式与提供的文本不匹配?你知道吗

正则表达式:

'^(.*)============== TT ==============(.*)=================================================='

文本:

'fasdfdsfadf\ndfassdflj\n============== TT ==============\nPlease add.\n=================================================='

re.search(x, editor_text)

将返回None

据我所知,正则表达式说返回文本的第一段(.*),然后查找delimeter(==),然后查找文本的第二段(.*),并以delimeter结束。你知道吗

为什么正则表达式不提取

fasdfdsfadf\ndfassdflj\n

以及

\nPlease add.\n


Tags: text文本renoneaddsearcheditortt
2条回答

也可以使用^{}标志来匹配换行符:

re.search(x, editor_text, re.DOTALL)

您需要使用sdotall)修饰符来强制点匹配换行序列。你知道吗

将其用作inline修饰符:

(?s)(.*)============== TT ==============(.*)==================================================

注意:可以将正则表达式简化如下:

(?s)(.*)={14} TT ={14}(.*)={50}

或者在对re.search()的调用中包含标志:

re.search(x, editor_text, re.S)

相关问题 更多 >