gpt4 book ai didi

Java:按字符数分割字符串,但保证字符串仅在空格之后分割

转载 作者:行者123 更新时间:2023-12-01 18:02:52 26 4
gpt4 key购买 nike

我想要实现这样的目标。

String str = "This is just a sample string";

List<String> strChunks = splitString(str,8);

strChunks应该是这样的:

"This is ","just a ","sample ","string."

请注意,像“sample”这样的字符串只有 7 个字符,而如果有 8 个字符,它将是“sample s”,它将分解我的下一个单词“string”。

我们还可以假设一个单词永远不会大于方法的第二个参数(在示例中为 8),因为在我的用例中,第二个参数始终是静态的,值为 32000。

我能想到的明显方法是循环遍历给定的字符串,在 8 个字符后中断字符串,然后从末尾搜索下一个空格。然后对剩余的字符串再次重复相同的操作。

有没有更优雅的方法来实现同样的目的。一些标准的第三方库(如 Guava、Apache Commons)中是否已经有任何实用方法可用。

最佳答案

拆分"(?<=\\G.{7,}\\s)"生成您需要的结果 ( demo )。

\\G表示上一场比赛的结束; .{7,}指七个或以上任意字符; \\s表示空格字符。

关于Java:按字符数分割字符串,但保证字符串仅在空格之后分割,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39347398/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com