我建议使用正则表达式,这在上下文中很容易:[^0-9]*
从^
字符串的开头获取所有非数字字符:
string test = " Puerto Rico 123 "; string result = Regex.Match(test, @"^[^0-9]*").Value;
Linq是另一个人:
string result = string.Concat(test.TakeWhile(c => c < '0' || c > '9'));
如果你想修剪前导和尾随空格(并"Puerto Rico"
作为答案,而不是" Puerto Rico "
),只需添加.Trim()
,例如:
string result = Regex.Match(test, @"^[^0-9]*").Value.Trim();