如何提取字符直到在asp.net c#的子字符串中找到一个数字
我的字符串就像
NR21380 SR9956 NER6754 WR98765 SR98700
一种简单的方法:
var firstLetterCharacters = text.TakeWhile(Char.IsLetter);
或相反:
var firstLetterCharacters = text.TakeWhile(c => !Char.IsDigit(c));
如果您需要其中的新字符串:
string newText = new string(firstLetterCharacters.ToArray());
您可以使用正则表达式替换所有非字母:
string s=NR21380 SR9956 NER6754 WR98765 SR98700
string s2 = Regex.Replace(s, @"[^A-Z]+", String.Empty);
尝试这个
String aa = "NR21380 SR9956 NER6754 WR98765 SR98700";
//getting the first chars from the dummy string.
var firstChars= Regex.Match(aa, @"[A-Z]+");
我只是尝试猜测输出:
string s = "NR21380 SR9956 NER6754 WR98765 SR98700";
var list = s.Split()
.Select(x => String.Join("", x.TakeWhile(c => char.IsLetter(c))))
.ToList();
输出将是列表NR SR NER WR SR