2017-10-17 142 views
0

我很努力地找到正確的正則表達式,我想匹配'%'的情況,但前提是引號之間沒有前面加'\'。正則表達式匹配%但不是%

例如,我想這回來的比賽

測試\ 「此%匹配\」 測試

但不能匹配

測試\」這\ %不匹配\「test

將正則表達式master設置爲w願意幫助我嗎?!

最終我的目標是確保在報價中找到每個'%'都會被轉義。

編輯: 這就是我現在所擁有的

這是目前我有什麼,但肯定是不正確的。

\ 「[%] [^ \%]。 \」

+0

你有沒有嘗試過自己呢?一小部分研究應該得出這個答案。 – CAustin

+0

這是目前我所擁有的,但絕對不正確。 \「。* [%] [^ \%]。* \」 – Wes

+0

你會推薦我用什麼來代替呢? – Wes

回答

2
([^\\]|\\[^%])* 

看起來這似乎是在我的測試工作在https://regex101.com/

的部分是( [^\\] | \\[^%] )*

()*表示0或更多所包含的組。

包含的組是或者[^\\]\\[^%]。第一種情況是「任何不是反斜槓的字符」,其中包括百分號。第二種情況是「反斜槓後跟任何不是百分號的字符。」

[^ ]運算符是「除這些以外的任何字符」。