如何在文字文本的最近一段时间停下来获取"这里的最后一句"?我目前的正则表达式最终得到了#34;中句。最后一句在这里"
我的正则表达式
\.(.+?ntence is he.+?)\.
示例文本
first sentence. middle sentence. last sentence is here. or is it?
答案 0 :(得分:3)
答案 1 :(得分:3)
问题在于你的RegEx并不像你想象的那样非贪婪。
您应该使用否定的字符类而不是句点来解决此问题,例如:
\.([^.]+?ntence is he[^.]+?)\.
答案 2 :(得分:1)
要获得最后一句话(定义为以句号结尾但不包含句号),如果不关心句子的内容,请尝试:
/\s*([^.]+\.)[^.]*$/
此处的示例详细说明:https://regex101.com/r/jA3mC1/1
这是“PCRE”(Perl兼容的正则表达式) - 所有“RegEx”都不一样。我假设你的意思是PCRE,但是,你应该编辑你的标签并包括[pcre]或你正在使用的任何正则表达方言。