gpt4 book ai didi

c# - 查找和替换 RegEx 问题

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

感谢 SO 对我的其他问题的所有大力帮助,我开始掌握 RegEx。但我还是很讨厌这个:

我的代码是:

   StreamReader reader = new StreamReader(fDialog.FileName.ToString());
string content = reader.ReadToEnd();
reader.Close();


我正在阅读一个文本文件,我想搜索这个文本并更改它(X 和 Y 值在我的文本文件中总是相互跟随):

X17.8Y-1。

但是这个文本也可以是X16.1Y2.3(X和Y之后的值总是不同的)


我想改成这样

X17.8Y-1.G54
或者
X(值)Y(值)G54



我的 RegEx 语句如下,但它不起作用。

content = Regex.Replace(content, @"(X(?:\d*\.)?\d+)*(Y(?:\d*\.)?\d+)", "$1$2G54");


有人可以帮我修改它使其工作并搜索 X(wildcard) Y(Wildcard) 并将其替换为 X(value)Y(value)G54 吗?

最佳答案

你需要的正则表达式是:

X[-\d.]+Y[-\d.]+

以下是如何在 C# 中使用它:

string content = "foo X17.8Y-1. bar";
content = Regex.Replace(content, @"X[-\d.]+Y[-\d.]+", "$0G54");
Console.WriteLine(content);

输出:

foo X17.8Y-1.G54 bar

关于c# - 查找和替换 RegEx 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2806789/

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