将大文本字符串拆分为小文本字符串
Split big text string into small ones
我正在将文本文件读入一个字符串,然后使用以下代码将整个文件拆分为字符串数组:
string[] split_text = Regex.Split(whole_text, @"\W+");
但是当我这样做时,每个词都单独出现在一个索引上,我不希望这样。
我想在一个索引上使用更大的字符串,比如在数组中的一个索引上使用大约 10 个单词,然后在第二个索引上使用 10 个单词,依此类推。
因此,如果我读取 90 个字的文件,我希望数组的大小为 9,每个索引为 10 个字。
您可以使用Batch
方法:
string[] split_text = Regex.Split(whole_text, @"\W+")
.Batch(10)
.Select(x => string.Concat(x))
.ToArray();
好的,有完整的解决方案:
class Program
{
static void Main(string[] args)
{
List<string> result = new List<string>();
string text = "Now im checking first ten chars from sentence and some random chars : asdasdasdasdasdasdasdasd";
try
{
for (int i = 0; i < text.Length; i = i + 10)
{
string res = text.Substring(i,10);
result.Add(res);
Console.WriteLine(res);
}
}
catch (Exception)
{
}
}
}
我建议使用 List<string>
而不是字符串数组。
我正在将文本文件读入一个字符串,然后使用以下代码将整个文件拆分为字符串数组:
string[] split_text = Regex.Split(whole_text, @"\W+");
但是当我这样做时,每个词都单独出现在一个索引上,我不希望这样。
我想在一个索引上使用更大的字符串,比如在数组中的一个索引上使用大约 10 个单词,然后在第二个索引上使用 10 个单词,依此类推。
因此,如果我读取 90 个字的文件,我希望数组的大小为 9,每个索引为 10 个字。
您可以使用Batch
方法:
string[] split_text = Regex.Split(whole_text, @"\W+")
.Batch(10)
.Select(x => string.Concat(x))
.ToArray();
好的,有完整的解决方案:
class Program
{
static void Main(string[] args)
{
List<string> result = new List<string>();
string text = "Now im checking first ten chars from sentence and some random chars : asdasdasdasdasdasdasdasd";
try
{
for (int i = 0; i < text.Length; i = i + 10)
{
string res = text.Substring(i,10);
result.Add(res);
Console.WriteLine(res);
}
}
catch (Exception)
{
}
}
}
我建议使用 List<string>
而不是字符串数组。