【发布时间】:2018-07-06 19:47:54
【问题描述】:
我尝试了一种模式来拒绝任何以 0 到 N 个空格开头的行,然后是 "#" 。在this test webpage,以下模式可以正常工作:
^(?!(\s*[#])).*
我使用以下文本作为测试行:
#tbadword
#test
one two
abadwo#rds
#three
并且只选择“非注释”行。
但是在R,如果我尝试使用Windows Rgui
> history(Inf, pattern = '^(?!(\\s*[#])).*' )
我收到错误消息“无效的正则表达式”。
有人能指出R 对这里的不满吗?我是否需要设置一个全局“perl=TRUE”或类似的东西?或者有没有更简单的方法来做到这一点?
【问题讨论】:
-
@WiktorStribiżew 如何使用
str_extract获取历史记录?我认为str_extract用于从给定字符串中提取文本。它在这里有什么用处? -
我以为 OP 有一个字符串。没关系。
history(Inf, pattern="^(?!\\s*#)", perl=TRUE)会起作用。
标签: r regex regex-lookarounds