我想角色的每個實體匹配c是沒有的連續重復中c是N或長的多個字符。
在我的情況下,要匹配的字符c, 是",重復次數 ,N是 3。具體來說,我想知道一個正則運算式解決方案,用于匹配一個單獨的"字符和 . 中的兩個字符"",但沒有""". 為了我的任務,最簡單的方法是使用幾個單獨的模式來做到這一點,但我很想學習一個可以教會我更多關于正則運算式的解決方案。如果解決方案可以擴展到N大于 3 的值,那就太好了。
在此示例中,N=3并且c=":
"OK"
""
"""OK"""
的前四個實體"應該是唯一的匹配項("第三行不應該匹配)。
我來最接近的是利用負lookbehinds /向前看符號:(?<!"{2})"(?!"{2})。然而,這并不排除重復拉伸中間的字符。它不適用于N兩者的其他值。
任何見解將不勝感激!
uj5u.com熱心網友回復:
您可以使用前瞻和后瞻,但您需要查找“任何不是參考的內容”,圍繞您允許參考的運算式:
(?<!")""?(?!")
對于需要在 M 和 N 引號之間以及 M > 1 或 N > 2 之間的更一般情況,請使用
(?<!")"{M,N}(?!")
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/408170.html
標籤:
下一篇:將單個sql檔案拆分為多個檔案
