5

私は文字列を持っています:

"こんにちは7866592これは私の12432文字列と823です。123をすべて裏返す必要があります"

そしてなりたい

"こんにちは2956687これは私の23421文字列で、328はすべて321を反転する必要があります"

この正規表現を使用してすべての数値を取得します。

Regex nums = new Regex("\d+");
4

2 に答える 2

19
var replacedString = 
    Regex.Replace(//finds all matches and replaces them
    myString, //string we're working with
    @"\d+", //the regular expression to match to do a replace
    m => new string(m.Value.Reverse().ToArray())); //a Lambda expression which
        //is cast to the MatchEvaluator delegate, so once the match is found, it  
        //is replaced with the output of this method.
于 2012-06-21T18:49:05.440 に答える
1

文字列をスペースで分割します。次に、数字である新しい文字列配列の文字列を取得し、それらに対してこの関数を実行します。

public static string Reverse( string s )
{
   char[] charArray = s.ToCharArray();
   Array.Reverse( charArray );
   return new string( charArray );
}

次に、配列を単一の文字列に再結合します。

于 2012-06-21T18:49:12.697 に答える