gpt4 book ai didi

c# - RegEx.Replace 失败,替换字符串为 $0.00

转载 作者:行者123 更新时间:2023-12-03 23:01:16 24 4
gpt4 key购买 nike

我正在尝试使用静态 RegEx.Replace 方法进行简单的替换,但如果在替换字符串中我有“$0.00”或它的某种派生词,它就会失败。

代码如下:

void Main()
{
try
{
string inputString = "[BEGIN-LOOP:DETAILS]this is what I want to replace[END-LOOP:DETAILS]";
string replacementString = "some text $0.00";
inputString = Regex.Replace(inputString, @"(\[BEGIN-LOOP:DETAILS\])(.*?)(\[END-LOOP:DETAILS\])", replacementString, RegexOptions.IgnoreCase | RegexOptions.Singleline);
Console.WriteLine(inputString);
}
catch (Exception ex)
{
throw;
}
}

失败的 RegEx 的输出是:

一些文本[BEGIN-LOOP:DETAILS]这是我要替换的内容[END-LOOP:DETAILS].00

应该是

一些文本 $0.00

最佳答案

您需要转义美元,如 Substitutions 上的 MSDN 页面所示.

The $$ substitution inserts a literal "$" character in the replaced string.

所以你想要:

string replacementString = "some text $$0.00";

顺便说一句,请不要像那样使用 try/catch block ...它会使您的代码变得杂乱无章。

关于c# - RegEx.Replace 失败,替换字符串为 $0.00,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8988910/

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