我想匹配重复N次但只有唯一数字的数字.我对正则表达式解决方案感兴趣.
vec <- c("00", "01", "02", "06", "07", "65", "87", "88", "66", "777", "999999")
grep("^[6-9]{1,}$", vec, value = TRUE)
#> [1] "87" "88" "66" "777" "999999"
Run Code Online (Sandbox Code Playgroud)
所以在这里我想只匹配88,66,777和9999.87不应该匹配,因为它包含两个不同的数字.
提示?
使用反向引用:
grep("^([6-9])\\1{1,}$", vec, value = TRUE)
[1] "88" "66" "777" "999999"
Run Code Online (Sandbox Code Playgroud)
如果要匹配重复N次的数字,那么{1}应该是N-1,因为您已经将第一个匹配作为捕获组.
| 归档时间: |
|
| 查看次数: |
60 次 |
| 最近记录: |