我想从R中的特定句子中提取字母数字字符。我尝试过以下方法:
aa=grep("[:alnum:]","abc")
。这应该返回integer(0)
,但它返回1,但不应该是这种情况,因为"abc"
不是字母数字。我在这里错过了什么?基本上我正在寻找一个功能,只搜索字母和数字组合的字符,例如:“ABC-0112”,“PCS12SCH”在此先感谢您的帮助。
[[:alnum:]]
匹配字母或数字。要匹配包含两者的字符串,那么你应该使用,
x <- c("ABC", "ABc12", "--A-1", "abc--", "89=A")
grep("(.*[[:alpha:]].*[[:digit:]]|.*[[:digit:]].*[[:alpha:]])", x)
# [1] 2 3 5
要么
which(grepl("[[:alpha:]]", x) & grepl("[[:digit:]]", x))
# [1] 2 3 5