1

C# での文字列操作について質問があります。

文字列があるとします:

"Today I ate a <a href="link here "> chocolate </a> at the <a href=\"another link here"> supermarket</a>. It was a brand of <a href=\"3rd link">Contoso</a>

私はそれを作りたいです:

"Today I ate a  chocolate at the supermarket. It was a brand of Contoso.

その一部を削除することはできますが、と の</a>間のすべてを削除する方法がわかりません。<a href>

どうすればこれを行うことができますか?

前もって感謝します!

4

2 に答える 2

1

ここで良い答えを見つけました:文字列から <a href="xx">Name</a> タグを削除するには正規表現が必要です

作品も!

より良い、より効率的な方法を自由に投稿してください。

于 2013-03-03T02:04:32.200 に答える
0

Regexおそらく最良のオプションですが、使用したくない場合はRegex、文字列を必要な方法で解析するのが非常に面倒です。

1つのアイデアは、文字列を分割してから、両側</a>のすべての文字を取得することです<a>

 var result = new string (input.Split(new string[] { "</a>" }, StringSplitOptions.RemoveEmptyEntries)
    .SelectMany(s => s.Where((c, i) => i < s.IndexOf("<a") || i > s.IndexOf(">"))).ToArray());

Regexしたがって、文字列オプションを使用するよりもはるかに簡単なので、 if があなたのために働いていることに固執します

于 2013-03-03T03:01:40.130 に答える