C#中的模式匹配问题

Mav*_*ang 8 c# regex

我有一个像"AAA 101 B202 C 303"这样的字符串,我想摆脱字符和数字之间的空格,如果有的话.所以操作后,字符串应该像"AAA101 B202 C303".但我不确定正则表达式是否能做到这一点?

有帮助吗?提前致谢.

Jon*_*eet 8

是的,您可以使用正则表达式执行此操作.这是一个简短而完整的例子:

using System;
using System.Text.RegularExpressions;

class Test
{
    static void Main()
    {
        string text = "A 101 B202 C 303 ";
        string output = Regex.Replace(text, @"(\p{L}) (\d)", @"$1$2");
        Console.WriteLine(output); // Prints A101 B202 C303
    }
}
Run Code Online (Sandbox Code Playgroud)

(如果你要做很多事情,你可能想要为模式编译一个正则表达式.)

\p{L}场比赛任何Unicode字母-你可能要更严格.