微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 除了首字母缩写词之外,拆分PascalCase字符串

我有一个需要人类可读的单词列表,例如FirstName到First Name,LastName到Last Name,在某些情况下,像ARB这样的首字母缩略词保持原样.后者最近被引入并且由于我们的正则表达式返回AR Bs而​​导致显示问题.这就是我们所拥有的,我知道这对于首字母缩略词是不够的:
([A-Z][a-z]+)

我在SO和其他网站上找到了能够使用首字母缩略词的其他表达式,但是它们可以处理字符串,其中首字母缩写词在字符串中而不是整个字符串.我可以做简单的正则表达式,但这对我的技能来说太棘手了.我会提供其他测试示例,如果我有它们,但所有的字符串工作正常,除了新的,ARBs.谢谢.

更新:这是代码用法

string friendlyName = Regex.Replace(field.Name,"([A-Z][a-z]+)"," $1",RegexOptions.Compiled).Trim();

解决方法

不会[A-Z] [a-z] *这样做吗?这应匹配一个或多个大写字母,后跟零个或多个小写字母.因此,ARB将保持单一实体,但CamelCase将分为Camel Case.

原文地址:https://www.jb51.cc/csharp/100574.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐