【问题标题】:R: Regular expression is invalid in this localeR:正则表达式在此语言环境中无效
【发布时间】:2012-05-10 16:31:03
【问题描述】:

我在 R 脚本中有以下正则表达式:

grepl("\xe9", "MY TEXT", fixed = FALSE, ignore.case = TRUE, perl = FALSE)

我收到以下错误:

Error in grepl("\xe9", "MY TEXT", fixed = FALSE, ignore.case = TRUE,  : 
regular expression is invalid in this locale

"\xe9" 是 "é" 的 unicode 表示,并按原样从文件中读取。

我该如何解决这个问题?此外,R 中是否有关于语言环境 w.r.t 正则表达式的有用资源?

【问题讨论】:

  • 如有疑问,请尝试用另一个 \ 转义 \。

标签: regex r unicode locale


【解决方案1】:

我不知道为什么@joran 不只是将其发布为答案:

grepl("\\xe9", c("MY TEXT", "é"), fixed = FALSE, ignore.case = TRUE, perl = FALSE)
#[1] FALSE  TRUE

【讨论】:

  • 哦,对了,@DWin,偷了乔兰的业力。糟糕,这不是 slashdot。 :-)
猜你喜欢
  • 1970-01-01
  • 2012-04-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-27
  • 1970-01-01
  • 1970-01-01
  • 2013-11-18
相关资源
最近更新 更多