1

次の文字列を分割したい

5 + 91 * 6 + 8 - 79 

結果として、このような同じシーケンスですべての要素(記号を含む)を保存する配列を取得し{5, +, 91, *, 6, +, 8, -, 79} ます

文字列もこのようになる5 + 91* 6+ 8 -79か、スペースがまったくない可能性があるため、スペースで分割することはできません5+91*6+8-79

私はこれを試しました

 string[] result = Regex.Split(str, @"[\d\+\-\*]{1,}");

しかし、これを試してみると、cmdでは何も返されません

foreach (string value in result)
    {

         Console.WriteLine(value);
    }
4

3 に答える 3

0

この正規表現で分割できます

(?<=\d)\s*(?=[+*/-])|(?<=[+*/-])\s*(?=\d)

はい、長いですが、文字列を分割します!

于 2013-05-11T18:08:07.950 に答える