数字が続く場合、疑問符の文字?
をテキストに置き換えたい。Rs
?
これは私が試したものです。しかし、機能していません。
string str = "DFg sdfsdaf ?145 dfgsdf ?fg";
str = str.Replace(@"\\?", "Rs");
Console.WriteLine(str);
望ましい出力:
DFg sdfsdaf Rs145 dfgsdf ?fg
助けてください。
このようにも試してください:
System.Text.RegularExpressions.Regex.Replace(str,@"\?(?=\d+)","Rs");
これを読むことをお勧めします。上記のパターンは、を探して、その後に1 つ以上の時間?
が続くかどうかをチェックしてから、に置き換えます。digit
?
Rs
これを試して:
Regex.Replace(str, @"\?(\d)", @"Rs$1")
これは、リテラルの疑問符の後に数字が続くものと一致し、Rs
その後にその数字が続くものに置き換えます。数字以外が続く疑問符は変更されません。
例:
var str = "DFg sdfsdaf ?145 dfgsdf ?fg";
Console.Out.WriteLine(Regex.Replace(str, @"\?(\d)", @"Rs$1"));
出力:
DFg sdfsdaf Rs145 dfgsdf ?fg
この正規表現を試してください
\\?((?:\d+))
これを処理するには正規表現を使用します:-
Regex oRegex = new Regex(@"\?((?:\d+))");
str = oRegex.Replace(str, "Rs$1");