除非我遗漏了什么,否则这个正则表达式看起来非常简单:
grepl("Processor\.[0-9]+\..*Processor\.Time", names(web02))
然而,它不喜欢逃避时期,\.
我的目的是成为一个字面上的时期:
Error: '\.' is an unrecognized escape in character string starting "Processor\."
我对这个正则表达式语法有什么误解?
我的 R-Fu 弱到不存在,但我想我知道发生了什么。
R 处理器的字符串处理部分必须查看字符串内部以进行转换\n
以及相关的转义序列到其等效字符中。 R 不知道什么\.
意味着它抱怨。您想要将转义的点放入正则表达式引擎中,因此您需要获得一个\
经过绞线机。做这类事情的通常方法是 escape 转义:
grepl("Processor\\.[0-9]+\\..*Processor\\.Time", names(web02))
将一种语言(正则表达式)嵌入另一种语言(R)通常会有点混乱,当两种语言使用相同的转义语法时更是如此。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)