2016-04-26 12 views
-2

analytics-on属性を持たないHTML文書にすべてbuttonのタグとanchorタグをリストする正規表現を作成しようとしています。属性なしのHTMLボタンとアンカータグを取得するRegex

私は2つのテストの状況している:

<button class="btn" 
    ng-click="doSomething()">Do something without analytics</button> 

そして

<button class="btn" 
    ng-click="doSomething()" 
    analytics-on analytics-event="Did something" analytics-category="Category">Do something with analytics</button> 

最初は一致している必要がありますが、2番目には、それは分析タグを持つべきではありません。

は、これまでのところ私が持っている:

複数行にわたる buttonまたは anchorタグに一致するが、私はこれをどのように確認することができます analytics-onの不在を探していません
/<(button|a)([^>]*)>/s 

+0

@zzzzBov気をつけてください。私は他のオプションにも対応しています – Edd

+0

DOMライブラリはこれまでどおりです。 – zzzzBov

+0

@zzzzBov簡単なスクリプトを書いて、これらのためにgrepできるようにしたいと思っていました。可能でしょうか。 – Edd

答えて

1

コメントで既に提案されているように、間違いなくHTMLパーサーを使用する必要があります。

しかし、テクニカル分析、グルーミングなどのために、この属性を持たないボタン/アンカーの数を知りたい場合は、この正規表現を1回だけ使用してから使用できますHTMLパーサーを使用してください:

<(button|a)(?!([^>]*?)analytics-on)(?:[^>]*?)>(?:[^<]*)<\/(button|a)> 

作業サンプルhere

+1

これはまさに私があなたに感謝する必要があるものです! – Edd

関連する問題