簡體   English   中英

正則表達式量詞中的反向引用

[英]Backreference in Regular Expression Quantifier

我有一個包含標題的字符串,該標題的長度為以下字段。

例:

fillerfillerCA20 abcdefghijklmnopqrst CA5 zyxwvfillerfiller

我需要找到兩個值:abcdefghijklmnopqrst和zyxwv

我將使用后向引用來獲取量詞的長度:

(?i)ca(?<length>\d+?)\x20.{\k<length>}\x20?

但顯然,不支持在量詞中使用向后引用。

我該怎么做?

不是一步。 正則表達式不能是自引用的。 它們首先被構建,然后被使用。 一旦構建了正則表達式,就無法重新構建/增強。

您可以像以前一樣匹配長度信息,並在評估匹配結果的第二步中使用它。

搶先評論:我知道一個人可以做"(.)\\1"來兩次匹配相同的字符。 但是,這並不是我所說的“自我參照”。

更好地構建解析器:查找CA的位置,讀取以下數字字符,然后讀取數字值所描述的下一個x字符。

暫無
暫無

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

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