我正在尋找一個正則運算式,它可以讓我在字串中最后出現一個點或逗號(無論哪個更靠后)
從我自己的谷歌搜索中我得到了這個([,\.])(?!.*\1),但這給了我每個字串兩個結果,這不是我想要的。
我希望有人可以幫助我,因為我正在為谷歌搜索正確的關鍵字而苦苦掙扎。
干杯,并提前非常感謝你
uj5u.com熱心網友回復:
此模式([,\.])(?!.*\1)匹配最后一個逗號或點,斷言右側不再存在 2 個中的任何一個。
點和逗號都可能發生這種情況,因此您可能會得到 2 個匹配項。
如果您想要一個匹配,您可以匹配其中一個,并使用[^,.\r\n]*與除列出的字符之外的任何字符匹配的否定字符類來斷言其中任何一個不再出現在右側。
請注意,您不需要捕獲組僅用于匹配。
[,.](?=[^,.\r\n]*$)
查看正則運算式演示。
uj5u.com熱心網友回復:
在這個正則運算式模式中,第一個捕獲組是每行中的最后一個逗號或點。
我們通過尋找一個逗號或點來實作這一點,并且不允許在它和行尾之間有一個點、逗號或行結尾。
([.,])[^.,\n\r]*$
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/445146.html
上一篇:正則運算式在特定塊內匹配
