我想找到一個合適的正則表達式來匹配輸入字符串中的自定義字符對。這些自定義字符被替換爲相應的html標籤。正則表達式忽略自定義轉義字符的模式
例如, 輸入字符串可以成對地用下劃線表示粗體字。因此, _Name_
輸出作爲<b>Name</b>
但是如果在字符串中一個真正的底線,不能用「大膽」標籤更換已被忽略。真正的下劃線前面必須有/
(我找不到更好的字符,它可能是更多的下劃線或連字符或其他)。 正則下劃線的任何單個或配對發生都必須被正則表達式忽略。
到目前爲止,我能想出這個表達式:
var pattern = @"(?!/)_(.*?)(?!/)_";
但下面輸入字符串失敗在:
_Tom_Katy/_Richard/_/_Stephan_and many users
它輸出爲
<b>Tom</b>Katy/<b>Richard/_/</b>Stephan_and many users
非常感謝在此之前, Pr
你的第一個(?!/)應該是一個倒影,而不是一個lokahead – Gabber
@ Gabber:第二個也應該是一個倒影。 –
不是在整個正則表達式之前尋找lookbehind? – Gabber