以下に示す文字列があります
A123459922
Aを削除し、その最後に正規表現を使用してBを追加したいと思います。正規表現を使用してそれを行うにはどうすればよいですか
Regex.Replace("A123459922","(\w{1})(\d*)");
最初の文字を削除して、最後に「B」を追加する方法が正確にわかりません。このようなものになってしまった
123459922B
私はあなたの質問と同じ正規表現を使用します。
あなたはこれを見ることができます(より複雑な状況のために)
Regex.Replace("A123459922",@"(\w{1})(\d*)", m => m.Groups[2].Value + "B");
Replace
メソッドの3番目のパラメーターを参照してください。これはMatchEvaluator
、を受け取りMatch
、置換文字列を返す、です。上記の式は次と同等です。
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");