我正在嘗試編寫一個匹配人類可讀引用值的正則表達式。作爲一個例子,XML屬性。我遇到的問題是,如果考慮屬性的結尾引號和後續屬性的開始引用,引用區域之間的數據實際上也是引用的。這裏的表達我到目前爲止:正則表達式只返回所有其他匹配
(?<=\")(?(?!\s+\")[^\"]+)(?=\")
我試圖用簡單的英語表達是:一個報價(不捕獲它),如果沒有後面只是空間在另一個報價終止,而不是匹配任何報價後跟另一個報價(不包括最後一個報價)。
,這裏是我的樣本數據:
<computer name = "printserver" model = "1000ZS" />
正則表達式產生3場比賽:
- 打印服務器
- 模型=
- 1000ZS
我想,如果我可以找到一種方法來告訴章程ex引擎跳過每隔一次我會擁有它。
這裏的另一種樣本數據集,有點像QML類屬性:
field1: "value1" field2: "value2" field3: "value3"
我能「看到」引用的數據,而是通過正則表達式提取它打我:-)
我m使用我的項目中的.NET 4.5 System.Text.RegularExpressions框架。我沒有針對像XML,JSON,QML等特定標記,但我正在尋找一種通用的正則表達式,它只會獲取類似於我們如何將數據解釋爲人類的引用值...
任何建議?謝謝!
爲什麼不只是使用XML解析器? –
我會用一個正則表達式來捕獲任何(鍵)=「(值)」,然後你從第二組中獲得值。 –
我編輯我的問題,試圖提供更清晰。謝謝。 – Jace