匹配和替换字符串c#中的版本号的正则表达式模式

本文关键字:版本号 正则表达式 模式 替换 字符串 | 更新日期: 2023-09-27 18:06:44

我想在c#中使用Regex从字符串中找到替换版本号。

字符串是这样的:

val = " AA.EMEA.BizTalk字符串。GroupNettingIntegrations, Version=1.0.0.0, Culture=neutral, PublicKeyToken=a86ac114137740ef";

有人能帮我解决这个问题吗?

匹配和替换字符串c#中的版本号的正则表达式模式

在我看来,你可以很容易地完成这一点,而不需要一个正则表达式,让你的代码更容易阅读:

 string components[] = someAssemblyFullyQualifiedName.Split(new char[] { ',' }, StringSplitOptions.IgnoreEmptyEntires);
 if(components.Length > 1)
    components[1] = "Version=2.0.0.0"; // whatever you want to replace with
 string newFullyQualifiedName = string.Join(",", components):

下面的正则表达式将执行您正在寻找的替换。

string val = "AA.EMEA.BizTalk.GroupNettingIntegrations, Version=1.0.0.0, Culture=neutral, PublicKeyToken=a86ac114137740ef";
val = Regex.Replace(val, @"Version=['d'.]+", "Version=2.0.0.0");

编辑:如果你不想把"Version="放在替换字符串中,你也可以使用向后查找的Regex功能。如果你想要的话,添加一个注释,我会画出来的