正则表达式 - 在C#中的括号和字母数字字符之间插入空格

时间:2013-12-18 01:01:28

标签: c# regex

我想在单词,数字和括号之间插入空格。例如,我有字符串

string a = "20and(2and 3)";

我希望

string b = "20 and ( 2 and 3 )";

我发现这种方法可以在单词和数字之间插入空格,而且它有效。但是当有括号时它不会插入空格......

b = Regex.Replace(a, "(?<=[0-9])(?=[A-Za-z])|(?<=[A-Za-z])(?=[0-9])", " ");

任何人都可以帮我这个吗...? 非常感谢你。

1 个答案:

答案 0 :(得分:4)

相反如何:

b = Regex.Replace(a, "[a-zA-Z]+|[0-9]+|[()]", "$0 ");

虽然这也会在末尾插入一个空格。如果这是一个问题,您只需Trim结果字符串:

b = Regex.Replace(a, "[a-zA-Z]+|[0-9]+|[()]", "$0 ").Trim();