我一直在使用正则表达式字符串和strsplit,但是却不知道如何解决我的问题。
我有一些html文档,这些文档将始终包含短语"people own these"
。我想提取此短语之前的数字。即“ 732,234个人拥有这些商品”-我希望捕获732,234(包括逗号,尽管我不在乎是否将其删除)。
数字和词组始终被包围。我尝试使用Xpath,但这似乎比正则表达式更难。任何帮助或建议,我们将不胜感激!
示例字符串:> 742,811个人拥有这些
-> 742,811
答案 0 :(得分:3)
请您尝试以下。
val <- "742,811 people own these"
gsub(' [a-zA-Z]+',"",val)
输出如下。
[1] "742,811"
说明: :此处使用R的gsub(全局替换)功能。将条件放在此处,应将变量val
的所有出现的空格都替换为带有小写或大写字母的NULL。
答案 1 :(得分:2)
尝试使用str_extract_all
库中的stringr
:
str_extract_all(data, "\\d{1,3}(?:,\\d{3})*(?:\\.\\d+)?(?= people own these)")