c# - 如何拆分字符串

时间:2012-09-26 21:21:46

标签: c# asp.net vb.net visual-studio

  

可能重复:
  How to split string preserving whole words?

我有以下字符串:

string s = "The Electors shall meet in their respective states to vote by ballot for President and Vice-President.";

我想取前60个字符并将它们分成两个单独的字符串,每个字符串不超过30个字符。每个字符串必须以整个单词开头(没有部分单词,也没有空格)。所以这是理想的结果:

string s1 = "The Electors shall meet in"; // 26 characters
string s2 = "their respective states to vot"; // 30 characters

谢谢。

2 个答案:

答案 0 :(得分:0)

也许尝试计算中点然后在两个方向上工作,直到找到空格。那将是你的分裂点。

答案 1 :(得分:0)

string s = "The Electors shall meet in their respective states to vote by ballot for President and Vice-President.";

string sSub = s.Substring(0,60);  //first 60 letters

string sSubSub = sSub.Substring(0,30);  //at most 30 per string

int index = sSubSub.LastIndexOf(' '); //finds the last space

string firstString = sSub.Substring(0,index); //first string is up until that space of t he 60-letter string

string secondSTring = sSub.Substring(index + 1, 30); //second string is the first 30 letters of the rest of the 60-letter string