如何不匹配[重复项]

问题描述 投票:-1回答:1

对某些人来说,这可能是一个简单的问题:您实际上如何在R中使用正则表达式不匹配任何内容?假设您有一个像这样的字符串向量:

q <- c("a", "12", "0", "", "300")

并且进一步假设您想匹配空字符串"",该如何处理?似乎可以使用""合理地匹配grep来匹配表示“任何字符”的元字符.,无论是这样还是否定字符类的内容,以及要匹配的参数invert = T比赛的对立面:

grep(".", q, value = T, invert = T)
[1] ""

grep("[^.]", q, value = T, invert = T)
[1] ""

无论哪种情况,比赛都有效。但是,可以肯定的是,使用invert感觉很方便,而不是认真的正则表达式。还有另一种不匹配R的方法吗?

r regex regex-negation
1个回答
-1
投票
grep("^$", q)

或带有nchar

which(nchar(q) == 0)
© www.soinside.com 2019 - 2024. All rights reserved.