簡體   English   中英

R中的反向引用(正則表達式)

[英]Backreferencing in R (Regular Expressions)

我不確定為什么我不能在R / RStudio中使用簡單的后向引用。

grepl('name\\1','namename')返回FALSE。 grepl('(name)\\1','namename')也不好。 我究竟做錯了什么?

謝謝!

使用1之前的雙反沖(正則表達式引擎會將其理解為單個反斜杠):

grepl('(name)\\1', 'namename')
## [1] TRUE

這是因為:

cat('(name)\\1')
## (name)\1

在您的情況下, \\1 == \\001表示代碼1的ASCII字符。

charToRaw('\1')
## [1] 01

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM