有条件地替换字符串的部分
本文关键字:字符串 替换 有条件 | 更新日期: 2023-09-27 18:01:59
我有一个关于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
和>
之间的一切和任何东西
我该怎么做呢?
提前感谢!
在这里找到了一个很好的答案:需要正则表达式来删除Name字符串
中的标签工作!
Regex
可能是最好的选择,但是如果您不想使用Regex
,那么以您想要的方式解析字符串将非常繁琐。
一个想法可以是通过</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
,如果它对你有用,因为它比使用字符串选项容易得多