【发布时间】:2019-11-03 11:21:02
【问题描述】:
虽然我用谷歌搜索了很多,但我没有找到满意的结果。我是 Regex 的新手,所以我什么也写不出来。我有这样的字符串:[Whatever You Want (WYW)]。我想得到这样的结果:[Whatever You Want (<b>WYW</b>)]。但是字符串会改变每个条件,例如 [New String (NS)] 或 [Other string (OTS)] 等。
我知道这里有人问过类似的问题。但是我无法找到解决方案,我不得不在这里写下。
我想,我必须使用正则表达式,但我不知道。我该怎么做?
【问题讨论】:
-
请检查链接的问题,尝试一下,如果失败,请回来分享您的发现并准确解决问题。
-
在其最简单的次优形式中,
var newString = oldString.Replace(findThis, $"<b>{findThis}</b>");它是 HTML 的事实可能并不相关。你只是找到一个字符串并用一个新字符串替换它(它恰好包含原始字符串。)正则表达式 可能 是一个很好的解决方案,但现在你正在做的看起来非常简单查找和替换。为了性能,也许使用StringBuiilder.Replace()。 -
@WiktorStribizew,我没有看到任何用 c# 编写的表达式。
-
@ScottHannen,感谢您的评论。我编辑了我的问题。每个条件的字符串都会改变。唯一常用的表达式是括号 ()。
-
所以你想要的是找到一对括号的每个实例并将括号的内容包裹起来——不管它们是什么——用粗体标签。方括号能算进去吗?