在Number和String之间添加空格

Pri*_*wal 0 .net c# regex

我有一个像这样的字符串

"我的火车在6A上进入Track 10B,用11S进行弦测试"

现在我想在Number 11和Char B之间添加空格等等我希望喜欢这个

"我的火车6 A上的轨道10 B和11 S的弦测试"

使用C#.这有什么逻辑吗?谢谢

Luc*_*ski 9

正则表达式:

var result = Regex.Replace(str, @"(?<=\d)(?=\p{L})", " ");
Run Code Online (Sandbox Code Playgroud)

这将用空格替换digit((?<=\d))和letter((?=\p{L}))之间的"空白空间".

没有外观的另一种方法是:

var result = Regex.Replace(str, @"(\d)(\p{L})", "$1 $2");
Run Code Online (Sandbox Code Playgroud)

在这种情况下,它用模式替换最后一个数字和第一个字母,$1 $2在过程中插入一个空格.