2011-06-26 3 views
3

属性を一致させようとしていますが、検索/置換ができます。私はそれが私が欲しい属性の引用符を超えて一致しているので、私は問題を抱えています。私はこのような正規表現を行う際引用符を含む単一の属性をRegEx経由で削除する方法

<a href="page.ashx" xref="somethingelse" title="something" class="image"> 

しかし:たとえば、私はここから「...」=外部参照を削除したい「* \」XREF = \、それはタイトル、属性の外部参照を選択し、 、ANDクラス。 xref属性のみを選択するように指示するにはどうすればよいですか?

答えて

8

は、しかし、これは動作するはず :あなたがC#では... .NET使用しているよう

xref="[^"]*" 
+0

申し訳ありません...私のアップヴォートを削除しようとしたのは、色分けが私の解釈を混乱させたからです。もう一度+1してください。 –

+0

これはあなたのソースにもよりますが、フォーマットされていることが分かっていればこれは問題ありません。あなたの入力が有効なHTMLであれば、正規表現は実際には適切ではありません - xref = value(等号のまわりに一重引用符やスペースを入れない...) –

1

使用非貪欲バージョン:\".*?\"

.*は、できるだけ多くの貪欲な選択です。 ?を追加することで、必要に応じて選択することが少なくなります。

は、私は強くマークアップを変更するための正規表現以外のものを使用することをお勧め
0

に見えます:

Regex regex = new Regex ("xref=\"[^\"]\"\\s*", RegexOptions.IgnoreCase); 
regex.Replace (myHtml, ""); 
関連する問題