C# 如何在字符串中拆分数字(第一个位置)?

C# 如何在字符串中拆分数字(第一个位置)?,c#,C#,以下字符串: 11 blabalba, balbalba balballbal baba 12 balbal13, afafaf14 1414adad1414 12 12 我希望它返回如下内容(用split分隔): 第二行: array 0: 12 array 1: balbal13, afafaf14 1414adad1414 12 12 如何在第一个位置进行拆分 var input = "11 blabalba, balbalba balballbal baba"; var spli

以下字符串:

11 blabalba, balbalba balballbal  baba
12 balbal13, afafaf14 1414adad1414 12 12
我希望它返回如下内容(用split分隔):

第二行:

array 0: 12
array 1: balbal13, afafaf14 1414adad1414 12 12
如何在第一个位置进行拆分

var input = "11 blabalba, balbalba balballbal  baba";
var split = input.Split(new [] {' '}, 2);
它将原始字符串拆分为空格,但最多返回两个字符串。所以它只会使用第一个空间进行拆分

它将原始字符串拆分为空格,但最多返回两个字符串。所以它只会使用第一个空间进行拆分

或者更有力地说:

var regex = new Regex(@"^(?'head'\d+)\s(?'rest'.+)$");

var match = regex.Match(s);

var head = match.Groups["head"].Value;
var rest = match.Groups["rest"].Value;

return new [] { head, rest};
或者更有力地说:

var regex = new Regex(@"^(?'head'\d+)\s(?'rest'.+)$");

var match = regex.Match(s);

var head = match.Groups["head"].Value;
var rest = match.Groups["rest"].Value;

return new [] { head, rest};

您的字符串是否出现在新行中?如果出现在新行中,您可以按
\n
进行拆分。您的字符串是否出现在新行中?如果出现在新行中,则可以按
\n
进行拆分。您的示例使其看起来像是一个字符串,以数字开头,后跟空格,后跟更多文本。不管第一个“单词”是什么——第一个被空格分割的文本——这就是第一个数组元素中的内容。它来自哪里,或者是随机的,都无关紧要。因此,如果字符串是“124 ABC 123”,您将得到[“124”,“ABC 123”]。数字2是什么<代码>input.Split(新[]{''},2)数字2告诉它要将字符串拆分成多少个元素。如果我省略了2,那么它将在有空格的地方拆分“124 ABC 123”,给你一个由三个元素组成的数组。2告诉它只返回2个元素。它将拆分第一个空格上的字符串,最多给您两个元素,并忽略其余空格。回答很好:)您的示例使您的字符串看起来像是以数字开头,后跟空格,后跟更多文本。不管第一个“单词”是什么——第一个被空格分割的文本——这就是第一个数组元素中的内容。它来自哪里,或者是随机的,都无关紧要。因此,如果字符串是“124 ABC 123”,您将得到[“124”,“ABC 123”]。数字2是什么<代码>input.Split(新[]{''},2)数字2告诉它要将字符串拆分成多少个元素。如果我省略了2,那么它将在有空格的地方拆分“124 ABC 123”,给你一个由三个元素组成的数组。2告诉它只返回2个元素。它将在第一个空格处拆分字符串,最多给您两个元素,并忽略其余空格。您的回答很好:)
var head = string.Join("", s.TakeWhile(x => char.IsDigit(x)));
var rest = string.Join("", s.Skip(head.Length + 1));

return new [] { head, rest };
var regex = new Regex(@"^(?'head'\d+)\s(?'rest'.+)$");

var match = regex.Match(s);

var head = match.Groups["head"].Value;
var rest = match.Groups["rest"].Value;

return new [] { head, rest};