正则表达式中不是运算符

时间:2016-08-26 22:15:36

标签: regex r

这必须在某处回答,但我似乎无法找到它。我正在尝试识别一串数字,特别是一个不包含任何符号的字符串(即_,。#etc ..)。如何编写一个表达式,用于标识长度超过10的整数字符串,但不包含任何包含符号的内容?

"49154" "Reader  #1" 0.585069444444445 28 "LA" "982" "000088261962" "01/29/10" "14:02:30"   1
"49159" "Reader  #1" 0.585081018518519 28 "LA" "982" "000088261962" "01/29/10" "14:02:31"   1
"49160" "Reader  #2" 0.585127314814815 28 "LA" "982" "000088261962" "01/29/10" "14:02:35"   1
"49163" "Reader  #2" 0.585138888888889 28 "LA" "982" "000088261962" "01/29/10" "14:02:36"   1

我试过类似:grep(“[0-9] {10,20}”),但我想确定第8列,但不包括#4

1 个答案:

答案 0 :(得分:1)

就个人而言,就你的具体情况(一串长度为10或更长的整数)而言,我会选择这样的事情:

\d{10,}

或者,如果R的正则表达式引擎不支持\d

[0-9]{10,}

如果要在字符串之前匹配可选的十进制值,可以使用:

([0-9]+\.)?[0-9]{10,}

请记住,请始终对要匹配的字符串使用最具体的模式。模式越通用,您就越难以过滤掉您不想要的字符串。

相关问题