使用stringr提取字符串中包含指定字符组合的完整单词的实现方法
解决方案
可直接运行的实现代码
library(stringr) data <- c("AlvariA?o, 1961","Andrade-Salas, Pineda-Lopez & Garcia-MagaA?a, 1994", "A?vila & Cordeiro, 2015", "BabiA?, 1922") result <- unlist(str_extract_all(data, "[[:alpha:]]*A\\?[[:alpha:]]*"))
运行后得到的result就和你预期的输出完全一致。
正则规则说明
[[:alpha:]]*:匹配0个或任意多个英文字母,覆盖A?前后的单词组成部分A\\?:匹配字面量字符组合A?,其中\\?是对正则特殊字符?的转义,避免被识别为量词规则- 整个匹配规则会自动筛选所有包含
A?的纯字母完整单词,自动跳过空格、标点、数字、连字符等非单词分隔内容
内容的提问来源于stack exchange,提问作者TMorris
相关产品推荐
相关产品推荐

