-5

C#で文字列が1つ出現するか、まったく出現しないかを探すためのより良い方法はありますか?現在、私は同じことを達成するために次のステートメントを使用しています。

Regex.Replace(input, @"[0-9]+([s][t][r][i][n][g])", "$1", RegexOptions.IgnoreCase);
4

2 に答える 2

2

?修飾子は、発生が1つだけであるか、まったく発生しないことを示します。だから、私があなたを正しく理解していれば、あなたは次のようなものが欲しい

Regex.Replace(input, @"[0-9]+((?:string)?)", "$1", RegexOptions.IgnoreCase);

?:文字列の前は非キャプチャグループを表すため、内側の中括弧はグループとして扱われず、置換された式で.Groupsアクセスできません。$<number>

繰り返しのセクションを参照してください。http://www.regular-expressions.info/quickstart.html

于 2012-11-28T11:18:00.947 に答える
0

string.containsメソッドを使用します。

string s1 = "The quick brown fox jumps over the lazy dog";
string s2 = "fox"; 

if (s1.contains(s2))
{
Regex.Replace(input, @"[0-9]+([s][t][r][i][n][g])", "$1", RegexOptions.IgnoreCase);
}
于 2012-11-28T11:17:49.987 に答える