.NET-如何将以“大写”分隔的字符串拆分为数组?

我如何从以下字符串开始:“ ThisIsMyCapsDelimitedString”

…到此字符串:“这是我的大写字母分隔字符串”

首选使用VB.net中最少的代码行,但也欢迎使用C#。

干杯!

回答:

我前一阵子做了。它与CamelCase名称的每个组成部分匹配。

/([A-Z]+(?=$|[A-Z][a-z])|[A-Z]?[a-z]+)/g

例如:

"SimpleHTTPServer" => ["Simple", "HTTP", "Server"]

"camelCase" => ["camel", "Case"]

要将其转换为仅在单词之间插入空格:

Regex.Replace(s, "([a-z](?=[A-Z])|[A-Z](?=[A-Z][a-z]))", "$1 ")


如果您需要处理数字:

/([A-Z]+(?=$|[A-Z][a-z]|[0-9])|[A-Z]?[a-z]+|[0-9]+)/g

Regex.Replace(s,"([a-z](?=[A-Z]|[0-9])|[A-Z](?=[A-Z][a-z]|[0-9])|[0-9](?=[^0-9]))","$1 ")

以上是 .NET-如何将以“大写”分隔的字符串拆分为数组? 的全部内容, 来源链接: utcz.com/qa/398145.html

回到顶部