You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在TextField中按每两个一组拆分输入单词?

解决方案

你可以通过步长为2的循环实现每两个单词一组的拆分,同时处理输入中可能存在的多空格问题,代码示例如下:

onChanged(String value) {
  // 处理输入:去除首尾空格,按空格拆分后过滤空字符串(避免多空格导致的空元素)
  final words = value.trim().split(' ').where((word) => word.isNotEmpty).toList();
  final twoWordGroups = <String>[];

  // 每两个单词为一组遍历
  for (int i = 0; i < words.length; i += 2) {
    String group = words[i];
    // 若存在下一个单词,拼接进当前组
    if (i + 1 < words.length) {
      group += ' ' + words[i + 1];
    }
    twoWordGroups.add(group);
  }

  // 输出分组结果(这里可替换为你的业务逻辑)
  for (var group in twoWordGroups) {
    print(group);
  }
}

逻辑说明

  1. 输入预处理:先用trim()去掉首尾空格,再通过split(' ')拆分单词,最后用where过滤掉空字符串,避免用户输入多空格时产生无效的空元素。
  2. 分组逻辑:以步长2遍历单词列表,每次取当前索引和下一个索引的单词拼接成一组;如果最后只剩一个单词,就单独作为一组。

测试你的示例输入"Split two words per sentence in the textfield",会输出:

Split two
words per
sentence in
the textfield

内容的提问来源于stack exchange,提问作者MElochukwu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 05:50:44