regex - 从句子中提取数字

标签 regex r string text-extraction

我需要从文本中提取一些数字。文字是

x <- "Lorem ipsum dolor sit amet[245], consectetur adipiscing (325). Deinde prima illa, quae in congressu[232]. solemus: Quid tu, inquit, huc? Sequitur disserendi ratio cognitioque 295. naturae;"

要提取的数字是 325 和 232。它们在括号内和句尾。不包括其他数字。我试过 strsplit(text, "[A-Za-z]+") ,但没有得到我需要的。

最佳答案

这是一个 stringi方法

x <- "Lorem ipsum dolor sit amet[245], consectetur adipiscing (325). Deinde prima illa, quae in congressu[232]. solemus: Quid tu, inquit, huc? Sequitur disserendi ratio cognitioque 295. naturae; Claudii libidini, qui tum erat summo ne imperio, dederetur"

library(stringi)
stri_extract_all_regex(x, "(?<=[\\[(])\\d+(?=[\\])][.?!])")

## [[1]]
## [1] "325" "232"

关于regex - 从句子中提取数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25474857/

相关文章:

android - 正则表达式获得正数

r - ggplot2 在 x 轴上的 Year 变量结束时不断添加 .5

r - 如果任何行包含子字符串,则标记

随机森林分类和训练/测试分割

c - 从 C 中的函数返回字符串数组

java - 如何在 Java 中有效地从多个字符串创建一个字符串

python - 如何在正则表达式中查看后面而不匹配模式本身?

php - 正则表达式未按预期工作 - PHP preg_match_all

R中矩形括号的正则表达式

javascript - 在对象数组中搜索字符串