作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我如何从这个字符串:“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 - 如何将 "caps"分隔字符串拆分为数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/155303/
我是一名优秀的程序员,十分优秀!