有没有更好的方式来创建在C#上的字母缩写? [英] Is there a better way to create acronym from upper letters in C#?

查看:192
本文介绍了有没有更好的方式来创建在C#上的字母缩写?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

什么是C#创建从上字母缩写词的最好方法



示例



Alfa_BetaGameDelta_Epsilon



预期结果



ABGDE



我的解决方案的工作,但它不是很好。

  VAR classNameAbbreviationRegex ​​=新的正则表达式([AZ] +,RegexOptions.Compiled); 
VAR匹配= classNameAbbreviationRegex.Matches(enumTypeName);
无功字母=新的字符串[matches.Count]

为(VAR I = 0; I< matches.Count;我++)
{
字母[I] =匹配[I] .value的;
}

VAR简称=的string.join(的String.Empty,字母);


解决方案

 字符串。加入(,s.Where(char.IsUpper)); 


What is the best way to create acronym from upper letters in C#?

Example:

Alfa_BetaGameDelta_Epsilon

Expected result:

ABGDE

My solution works, but it's not nice

        var classNameAbbreviationRegex = new Regex("[A-Z]+", RegexOptions.Compiled);
        var matches = classNameAbbreviationRegex.Matches(enumTypeName);
        var letters = new string[matches.Count];

        for (var i = 0; i < matches.Count; i++)
        {
            letters[i] = matches[i].Value;
        }

        var abbreviation = string.Join(string.Empty, letters);

解决方案

string.Join("", s.Where(char.IsUpper));

这篇关于有没有更好的方式来创建在C#上的字母缩写?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆