gpt4 book ai didi

c# - 用特殊字符替换 C# 中的所有函数

转载 作者:行者123 更新时间:2023-11-30 19:30:37 25 4
gpt4 key购买 nike

当我打电话

Regex.Replace(
"My [Replace] text and another [Replace]",
"[Replace]",
"NewText",
RegexOptions.IgnoreCase)

这给了我以下结果我不知道为什么它会给出意想不到的结果。

My [NewTextNewTextNewTextNewTextNewTextNewTextNewText] tNewTextxt NewTextnd NewTextnothNewTextNewText [NewTextNewTextNewTextNewTextNewTextNewTextNewText]

我怎样才能改变正则表达式使结果可以是这样的。

我的 NewText 文本和另一个 NewText

最佳答案

[] 在 RegEx 中有特殊含义;它允许您为匹配项指定字符/字符类的“列表”。您需要对其进行转义以使其按预期工作:

"\\[Replace\\]"

这里使用双反斜杠,因为第一个是为 C# 转义斜杠,第二个是为 Regex 转义斜杠。

这就是您当前的正则表达式基本上在做的事情:匹配其中的任何字符:R, e, p, l, a, c, e

这就是为什么您会看到 NewText 在结果文本开头的方括号之间连续重复 7 次。然后它还会用 NewText 简单地替换这 7 个字符。

转义 [] 会删除特殊含义,因此您按字面意思进行匹配,并且正是您希望匹配的内容。

关于c# - 用特殊字符替换 C# 中的所有函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8717889/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com