我想構造一個匹配兩個組的正則表達式,第二個組包含一個單個字符,其重複次數與第一個組中的字符數相同。像^(\w+) (x{length of \1})
這樣的,例如hello xxxxx
和foo xxx
會匹配,但是hello xxxxy
和foo xxy
不會。這可能嗎?正則表達式匹配兩個不同的長度相同的組
此處的目標是匹配reStructuredText樣式列表中的縮進,其中列表項中的第二行應縮進以匹配第一行中的文本的開頭,排除可變長度的數字列表標記。例如,
1. If the number is small,
subsequent lines are typically
indented three spaces.
2. Although if the first line has
multiple leading spaces then
subsequent lines should reflect that.
11. And when the number starts to get
bigger the indent will necessarily
be bigger too.
的長度有一個在所有的土地的正則表達式可以算沒有結構。有些屬性可以蒐集,如奇數或偶數。唯一的例外是Perl代碼構造'(?{code})',它可以很容易地做到這一點。 – sln
據我所知,你無法完全基於長度匹配不同的羣體。如果這些組的內容是相同的,那麼這將起作用的唯一方法。然後你可以使用反向引用。 –
嗯,那太糟糕了。謝謝(你的)信息。 – clwainwright