0
有沒有反轉正則表達式選擇的方法?正則表達式:反轉選擇
我有以下字符串例如:
Hello World
<h1>{{{title}}}</h1>
No HTML
<p>{{description}}</p>
{{#each projects}}
<h2>{{#name}}</h2>
<bockquote><p>{{#quote}}</p></bockquote>
<p>{{#description}}</p>
<pre><code class="lang-javascript">{{{#code}}}</code></pre>
{{/each}}
我要選擇哪一個不是由HTML的標籤或車把標籤包圍的文本。
我的方法是選擇HTML/Handlebar-Tags,然後顛倒選擇。 RegEx爲此看起來像:
/<(.*)>|{{.*}}/
但我只是不能找到一種方法來顛倒這一點。 還有別的辦法嗎?
[你無法解析(X)HTML用正則表達式。](http://stackoverflow.com/a/1732454/1529630) – Oriol 2014-11-05 01:05:08
什麼@Oriol說。編寫一個簡單的令牌解析器並運行這些數據,而不是嘗試爲此使用regexp。 – 2014-11-05 01:07:45
即使你的原始正則表達式不正確,因爲它會從一行中的'<'到最後一個'>'吃掉,並且超出標籤的邊界。另一個'{{。*}}'只適用於每行只有一個實例。 – nhahtdh 2014-11-05 02:22:27