C# 如何在C中使用正则表达式替换#
我有一个字符串,如下所示C# 如何在C中使用正则表达式替换#,c#,asp.net,regex,C#,Asp.net,Regex,我有一个字符串,如下所示 A123459922 我想删除A,并在其末尾添加带有正则表达式的B。我如何使用正则表达式来实现它 Regex.Replace("A123459922","(\w{1})(\d*)"); 我不知道如何删除第一个字符并在其末尾添加“B”?结果是这样的 123459922B 我将使用与您的问题相同的正则表达式。 你可以看看这个(对于更复杂的情况) 请参阅Replace方法的第3个参数。它是一个匹配计算器,它接收一个匹配,并返回替换字符串。上述表达式相当于: privat
A123459922
我想删除A,并在其末尾添加带有正则表达式的B。我如何使用正则表达式来实现它
Regex.Replace("A123459922","(\w{1})(\d*)");
我不知道如何删除第一个字符并在其末尾添加“B”?结果是这样的
123459922B
我将使用与您的问题相同的正则表达式。 你可以看看这个(对于更复杂的情况) 请参阅
Replace
方法的第3个参数。它是一个匹配计算器
,它接收一个匹配
,并返回替换字符串。上述表达式相当于:
private static void Main()
{
Regex.Replace("A123459922",@"(\w{1})(\d*)", Evaluator);
}
private static string Evaluator(Match m) {
return m.Groups[2].Value + "B";
}
你基本上是说:我想用
第二组+B字符来替换整个匹配
我将使用与你问题相同的正则表达式。
你可以看看这个(对于更复杂的情况)
请参阅Replace
方法的第3个参数。它是一个匹配计算器
,它接收一个匹配
,并返回替换字符串。上述表达式相当于:
private static void Main()
{
Regex.Replace("A123459922",@"(\w{1})(\d*)", Evaluator);
}
private static string Evaluator(Match m) {
return m.Groups[2].Value + "B";
}
你基本上是说:我想用
第二组+B字符来替换整个匹配
,根据你给定的输入和输出字符串示例,你可以简单地使用:
根据您给定的输入和输出字符串示例,您只需使用以下方法即可完成此操作: 尝试使用此正则表达式:
Regex.Replace("A123459922", @"\w(.*)", "$1B");
尝试使用此正则表达式:
Regex.Replace("A123459922", @"\w(.*)", "$1B");
Substring()有什么问题?只有在开头有
A
时才需要添加B
?或者总是不管?我明白了,但只是想知道正则表达式如何应用于这个问题。只要你不关心任何A
,你也可以使用string。替换,它速度更快,但也会匹配任何和所有A
,甚至是你可能想要保留的。Substring()有什么问题吗?只有在开头有A
时才需要添加B
?或者总是不管?我明白了,但只是想知道正则表达式如何应用于这个问题。只要你不关心任何A
,你也可以使用string。替换,它速度更快,但也会匹配任何和所有A
,即使是你想要保留的。这个问题虽然不清楚,但提到了“第一个字符”。答案不应该考虑到这一点吗?这个问题虽然不清楚,但确实提到了“第一个字符”。答案不应该考虑到这一点吗?