尽管阅读了R 正则表达式的帮助页面 http://stat.ethz.ch/R-manual/R-devel/library/base/html/regex.html
最后,要包含文字 -,请将其放在第一个或最后一个(或者,对于 perl
= 仅 TRUE,前面加一个反斜杠)。
我无法理解之间的区别
grepl(pattern=paste("^thing1\\-",sep=""),x="thing1-thing2")
and
grepl(pattern=paste("^thing1-",sep=""),x="thing1-thing2")
两者都返回 TRUE。我应该逃还是不在这里?最佳实践是什么?
连字符主要是normal正则表达式中的字符。
您不需要在字符类之外转义连字符;它没有特殊意义。
在一个字符类中[ ]
您可以放置一个连字符作为first or last范围内的字符。如果您将连字符放在其他位置,则需要转义它才能将其添加到您的类中。
例子:
grepl('^thing1-', x='thing1-thing2')
[1] TRUE
grepl('[-a-z]+', 'foo-bar')
[1] TRUE
grepl('[a-z-]+', 'foo-bar')
[1] TRUE
grepl('[a-z\\-\\d]+', 'foo-bar')
[1] TRUE
Note:更常见的是放置连字符first or last在一个字符类中。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)