我正在寻找一种拆分字母数字字符串的方法,例如
"Foo123Bar"
像这样放入一个包含它的数组
array[0] = "Foo"
array[1] = "123"
array[2] = "Bar"
我不确定实现此目的的最佳方法是什么,特别是因为我比较的字符串不遵循特定模式,无论是字母还是数字,或者它们各自出现的次数。例如,它可能看起来像以下任何一种:
"Foo123Bar"
"123Bar"
"Foobar123"
"Foo123Bar2"
除了逐字符拆分字符串并检查它是否为数字之外,我正在尝试找出是否有更有效的方法来执行此操作。
最佳答案
string input = "Foo123Bar";
var array = Regex.Matches(input, @"\D+|\d+")
.Cast<Match>()
.Select(m => m.Value)
.ToArray();
关于c# - 将字母数字字符串拆分为分别包含字母和数字字符的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18992292/