如何使用C#正则表达式获取小写和大写字母?
我的代码
string inputText = "afaUTE123567645gfhdDSFSD21312ASDFSAF21312sdafASasdfDF213asefd";
string pattern = @"(?'AlphabetLower'[a-z]+)|(?'AlphabetUpper'[A-Z]+)|(?'Alphabet'[a-zA-Z]+)|(?'Number'[0-9]+)";
var matches = Regex.Matches(inputText, pattern).Cast<Match>().OrderBy(s => s.Index);
*ps : 将来我还想添加希腊字母(小写、大写和混合)
看起来您可能想将所有字母选项组合在一起,与数字部分分开。像这样的东西:
(?'AnyAlphabet'(?'AlphabetLower'[a-z]+)|(?'AlphabetUpper'[A-Z]+)|(?'Alphabet'[a-zA-Z]+))+|(?'Number'[0-9]+)
但是根据您的实际用例,您可能可以稍微简化这一点,或者使用像 Sprache 这样的解析库。