2015-03-31 43 views
2

如果可能,我正在編寫一個解析器並需要通過正則表達式處理轉義字符。正則表達式來處理一組動態分隔符

鑑於與「\」轉義字符和「&‘分隔符的樣本串:

TestSection1&TestSection2\\&TestSection3\&TestSection4 

我希望能拆就有效的’&」,也就是說不是一個&逃脫。所以,上面的例子會出來這樣的事:

  1. TestSection1
  2. TestSection2 \
  3. TestSection3 \ & TestSection4

香港專業教育學院嘗試了不少正則表達式是香港專業教育學院試圖矇混過關在一起,但沒有運氣。有沒有人有任何關於如何實現這一目標的見解,或者甚至有可能? 感謝

回答

1

你可以使用這個雙回顧後基於正則表達式:

(.+?)(?:(?<!(?<!\\)\\)&|$) 

RegEx Demo

(?:(?<!(?<!\\)\\)&|$)意味着比賽&或結束錨如果&不是由單一的\

+1

工作就像一個魅力之前。謝謝。我肯定會仔細研究這一點,並將其分解。 – Shadow3188 2015-03-31 17:05:09

+0

不客氣,很高興幫助。 – anubhava 2015-03-31 17:22:31