例如,我有一個字串,
t = "abftababcd"
我想匹配
p= "abXX"
其中 X 是通配符并匹配任何字符的模式。
['abft', 'abab','abcd']
對于給定的 p 和 t 我想得到p="XXab"預期的輸出是['ftab', 'abab']
現在我想匹配字串 t 中的所有重疊匹配。我嘗試用
"ab\w{no.of X}"
This 替換 X 不會給出重疊匹配。所以我嘗試了先行斷言,
"ab(?=(\w{no.of X}))"
然后這只給了我與模式“ab”的匹配。此外,如果 X 出現在XXab字串的開頭或中間,前瞻是否有效aXXXb?
uj5u.com熱心網友回復:
你可以匹配
(?=(ab..))
捕獲組 1 包含每個匹配項,其中為字串
"abftababcd"
是和。"abft"_"abab""abcd"
該運算式包含一個肯定的前瞻,它斷言字串中的當前位置后面'ab'緊跟任意兩個字符,這四個字符被保存到捕獲組 1。
將位置視為連續字符之間或字串中第一個字符之前的位置。
演示
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/437252.html
