1

可能重复:
如何拆分保留整个单词的字符串?

我有以下字符串:

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

谢谢你。

4

2 回答 2

0

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

于 2012-09-26T21:26:47.347 回答
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
于 2012-09-26T21:31:26.450 回答