【发布时间】:2018-07-30 19:00:35
【问题描述】:
我想从下面的正则表达式中提取第一句话。我要实施的规则(我知道这不是通用解决方案)是从字符串开始 ^ 中提取直到(包括)第一个以小写字母开头的句点/感叹号/问号或号码。
require(stringr)
x = "Bali bombings: U.S. President George W. Bush amongst many others has condemned the perpetrators of the Bali car bombing of October 11. The death toll has now risen to at least 187."
到目前为止,我最好的猜测是尝试实现非贪婪的 string-before-match approach 在这种情况下失败:
str_extract(x, '.+?(?=[a-z0-9][.?!] )')
[1] NA
非常感谢任何提示。
【问题讨论】:
-
感谢维克托。这当然适用于这个例子。为什么
October 11.的最后一个1不匹配? -
不确定你的意思,你只需要检查一个数字或小写字母,对吧?
-
对不起,我看到你调整了你的建议。现在看看