簡體   English   中英

regexp \ k <name + 0>中的“+0”是什么意思?

[英]What does the “+0” mean in the regexp \k<name+0>?

我是Ruby中的正則表達式的新手,我似乎無法找到關於\\k<name+0>含義的任何可靠文檔。 這是我沒有得到的+0部分。

這是一個例子 - 這個Regexp匹配回文:

\A(?<p>(?:(?<l>\w)\g<p>\k<l+0>|\w))\z

當我刪除\\k<l+0>中的+0 ,它不再正確匹配。
我的測試:

>> /\A(?<p>(?:(?<l>\w)\g<p>\k<l+0>|\w))\z/.match "aabbcdcbbaa" 
#=> #<MatchData "aabbcdcbbaa" p:"aabbcdcbbaa" l:"c">

>> /\A(?<p>(?:(?<l>\w)\g<p>\k<l>|\w))\z/.match "aabbcdcbbaa" 
#=> nil

我所做的就是刪除+0 我還沒有找到任何文件或這方面的例子,有人能指出我正確的方向嗎?

\\k<l+0>(?<l>\\w)一起使用

(?<l>\\w)的匹配存儲在名為'l'的捕獲組中

\\k<l+0>匹配指定捕獲組'l'匹配的相同文本,當它處於相同的遞歸級別時,此反向引用現在

暫無
暫無

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

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