在第一个字母实例处拆分文本

时间:2010-03-08 22:57:24

标签: c# regex split

我有一堆产品sku的样子:

abc234
asdf234324
adc234-b

结果:

abc 234
asdf 234324
adc 234-b

我想在第一个字母实例中拆分文本。

当我说拆分时,基本上我想要访问文本的两个部分,也许是在数组中?

最好的方法是什么?

2 个答案:

答案 0 :(得分:3)

^([a-z]+)(.*)

第一个捕获组将具有仅alpha前缀,第二个捕获组将具有其他所有内容。

答案 1 :(得分:2)

这是一个与@Dav的回答一致的代码示例。

List<string> list = new List<string>()
{
   "abc234",
   "asdf234324",
   "adc234-b"
};

Match m;
foreach (string s in list)
{
   m = Regex.Match(s, "^(?<firstPart>[a-z]+)(?<secondPart>(.+))$");
   Console.WriteLine(String.Format("First Part = {0}", m.Groups["firstPart"].Value));
   Console.WriteLine(String.Format("Second Part = {0}", m.Groups["secondPart"].Value));
}