【发布时间】:2018-11-07 21:08:42
【问题描述】:
我想按照这些规则拆分存储在字符串变量中的长文本:
- 在一个点 (.) 上分割
- 子字符串的最小长度应为 30(例如)。
举个例子:
"The boy ate the apple. The sun is shining high in the sky. The answer to life the universe and everything is forty two, said the big computer."
假设我想要的最小长度是 30。
得到的结果拆分为:
- “男孩吃了苹果。太阳高高挂在天空。”
- “关于生命宇宙和万物的答案是四十二,大型计算机说。”
我不想听“那个男孩吃了苹果”。作为一个拆分,因为它少于 30 个字符。
我想到的两种方式:
- 遍历所有字符并将它们添加到字符串构建器。每当我到达一个点 (.) 时,我都会检查我的 String builder 是否超过了我拆分它的最小值,否则我继续。
- 在所有点 (.) 上分割,然后循环分割。如果拆分字符串之一小于最小值,我将其与后面的字符串连接。
但我正在寻找这是否可以通过使用正则表达式直接在匹配前拆分和测试最少字符数来完成。
谢谢
【问题讨论】: