gpt4 book ai didi

c# - 根据位置用字符串替换c#中字符串中的字符

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

我想用 C# 中的字符串替换字符串中的字符。我尝试了以下,

在下面的程序中,我想用其他一些字符替换字符“:”和第一次出现的“-”之间的字符集。

我可以提取“:”和第一次出现的“-”之间的字符集。

谁能说说如何将这些插入到源字符串中。

        string source= "tcm:7-426-8";
string target= "tcm:10-15-2";
int fistunderscore = target.IndexOf("-");
string temp = target.Substring(4, fistunderscore-4);
Response.Write("<BR>"+"temp1:" + temp + "<BR>");

例子:

        source: "tcm:7-426-8" or "tcm:100-426-8" or "tcm:10-426-8"

Target: "tcm:10-15-2" or "tcm:5-15-2" or "tcm:100-15-2"

output: "tcm:10-426-8" or "tcm:5-426-8" or "tcm:100-426-8"

简而言之,我想替换“:”和“-”(firstoccurance) 之间的字符集以及从同一种字符串中提取的字符。

有什么帮助吗?

谢谢。

最佳答案

如果您想用目标中的内容替换源中的第一个“:Number-”,您可以使用以下正则表达式。

    var pattern1 = New Regex(":\d{1,3}-{1}");
if(pattern1.IsMatch(source) && pattern1.IsMatch(target))
{
var source = "tcm:7-426-8";
var target = "tcm:10-15-2";

var res = pattern1.Replace(source, pattern1.Match(target).Value);
// "tcm:10-426-8"
}

编辑:为了不让你的字符串被空的东西替换,在实际替换之前添加一个 if 子句。

关于c# - 根据位置用字符串替换c#中字符串中的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9973554/

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