在r中不包含此字符的字符前/后提取字符串
我有这样一个字符串:在r中不包含此字符的字符前/后提取字符串,r,stringr,R,Stringr,我有这样一个字符串: strings <- c("100% 16 Feedback Kakkanad, Ernakulam","98% 159 Feedback Greater Kailash Part 1, Delhi","Bannerghatta Road, Bangalore ₹250 Available on Su") 上面的函数返回向量: "% 16 ", "% 159 ",&
strings <- c("100% 16 Feedback Kakkanad, Ernakulam","98% 159 Feedback Greater Kailash Part 1, Delhi","Bannerghatta Road, Bangalore ₹250 Available on Su")
上面的函数返回向量:
"% 16 ", "% 159 ",""
我只想提取这个数字,所以删除%和空格。我试图搜索,但我不知道如何用更少的词来定义我的问题:(我们可以使用带有正则表达式查找的
str\u extract
来提取任何零或多个空格(\\s*
)后面的数字,然后是字符串“Feedback”
library(stringr)
as.numeric(c(str_extract_all(strings, "\\d+(?=\\s*Feedback)", simplify = TRUE)))
#[1] 16 159
匹配
%
的问题在于它也成为输出的一部分。相反,它可以是一个regex lookaround
as.numeric(str_extract_all(strings,"(?<=\\%\\s)[0-9]+", simplify = TRUE))
#[1] 16 159
as.numeric(str_extract_all(strings)”(?谢谢,快速回答!
as.numeric(str_extract_all(strings,"(?<=\\%\\s)[0-9]+", simplify = TRUE))
#[1] 16 159