我正在学习使用正则表达式,这里的任务是: 文字是两个人之间的聊天
” 安东:我需要工作人员.... ........................... ...........现在
Antor:好的。 “
我需要找到单词“ need”(和“ needed”或“ needing”)之后的第一个文本,直到该段落的末尾。
我的代码没有给出“:”
with open('pars_text2.txt', 'r') as pars_text2:
conversation = pars_text2.read()
pattern=r'^(all.need[,\s]*)'
second=re.match(pattern, conversation)
print(second)
它应该给出字符串“ need staff...。 ........................... ....................现在”。
答案 0 :(得分:2)
如果在本段末尾您是指空行,则可能是一个捕获组:
^.*?(\b(?:need(?:ed|ing)?)\b.*(?:(?!\n[ \t]*$)\n.*)*)
说明
^
字符串的开头.*?
匹配除换行符非贪婪以外的所有字符(
捕获组(其中将包含您的值)
\b(?:need(?:ed|ing)?)\b
匹配需要,需要或需要.*
匹配除换行符以外的所有字符(?:(?!\n[ \t]*$)\n.*)*
重复0+次以匹配整行,同时使用负前瞻断言紧随其后的不是空行)
关闭捕获组