[英]Match all words from given string where words does not have only lower case letters or only upper case letters
I would like to retrieve only those words from given string which are not all CAPS and all Lower or only first letter is upper 我只想从给定的字符串中检索并非全部为CAPS且全部为Lower或仅首字母为upper的单词
For example in below sentence all should be extracted except first 4 words: 例如,在下面的句子中,除前四个单词外,所有内容都应提取:
a abcd Hello AJP
abcd Hello AJP
string str = "a abcd Hello AJP lbl_Description MHz AssignExistingUserOptionText _BTHAudClassDrv_KEYWORD A_dd actelisMetaLOOP AudEngineStream_BeginStreamSwitch_Enter AudEngineStream_BeginEOS Bo_th btnChange C_hange CDs CHECK_AND_CHANGE_ACCESS_MASKS checkBox1 CIMObjectPath ciscoISLvlan comboEmailAccounts D_elete CSVFS_ReFS D_HCP DADOrNUDReply DECnet IPv4 kJ kPa LAlt mL N_o tabPage11 uAPSD VLANs YCbCr"
You can do it using Split
method and LINQ: 您可以使用
Split
方法和LINQ来做到这一点:
var result = str.Split(new[] {' '}, StringSplitOptions.RemoveEmptyEntries)
.Where(x => !x.All(char.IsUpper) &&
!x.All(char.IsLower) &&
!(char.IsUpper(x[0]) &&
x.Skip(1).All(char.IsLower)))
.ToArray();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.