我有一个字符串,如下所示
A123459922
我想删除 A 并将带有正则表达式的 B 添加到它的末尾。我怎样才能使用正则表达式
Regex.Replace("A123459922","(\w{1})(\d*)");
我不知道如何删除第一个字符并将“B”添加到它的末尾?结束了这样的事情
123459922B
我将使用与您的问题相同的正则表达式。
你可以看看这个(对于更复杂的情况)
Regex.Replace("A123459922",@"(\w{1})(\d*)", m => m.Groups[2].Value + "B");
见Replace
方法的第三个参数。它是 a MatchEvaluator
,它接收 aMatch
并返回替换字符串。上述表达式等价于:
private static void Main()
{
Regex.Replace("A123459922",@"(\w{1})(\d*)", Evaluator);
}
private static string Evaluator(Match m) {
return m.Groups[2].Value + "B";
}
你基本上是在说:我想替换the entire match
为the 2nd group + the B character
根据您给定的输入和输出字符串示例,您可以简单地使用Substring()
:
var newString = myString.Substring(1) + "B";
尝试使用这个正则表达式:
Regex.Replace("A123459922", @"\w(.*)", "$1B");