.net – 正则表达式,用大写字母拆分字符串,但忽略TLA

前端之家收集整理的这篇文章主要介绍了.net – 正则表达式,用大写字母拆分字符串,但忽略TLA前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用正则表达式
System.Text.RegularExpressions.Regex.Replace(stringToSplit,"([A-Z])"," $1").Trim()

用大写字母拆分字符串,例如:

‘MyNameIsSimon’成为“我的名字是西蒙”

在使用枚举时,我觉得这非常有用。我想做的是稍微改变,以便如果下一个字母是小写字母,字符串才会被分割,例如:

“USAToday”将成为“今日美国”

这可以做吗?

编辑:感谢所有人的回应。我可能没有完全想到这一点,在某些情况下,“A”和“我”需要被忽略,但这是不可能的(至少不是有意义的)。在我的情况下,下面的答案是我需要的。谢谢!

((?<=[a-z])[A-Z]|[A-Z](?=[a-z]))

或其Unicode感知表哥

((?<=\p{Ll})\p{Lu}|\p{Lu}(?=\p{Ll}))

全球替换时

" $1"

把手

TodayILiveInTheUSAWithSimon
USAToday
IAmSOOOBored

屈服

 Today I Live In The USA With Simon
USA Today
I Am SOOO Bored

在第二步中,您必须修剪字符串。

猜你在找的正则表达式相关文章