gpt4 book ai didi

javascript - 按单词将字符串分成两半

转载 作者:搜寻专家 更新时间:2023-11-01 04:46:02 25 4
gpt4 key购买 nike

我处于这样一种情况,我想把一个字符串分成两半,尊重单词,这样 this string here 就不会被分成 this str ing here,而是将其拆分为 this string here

我认为第一步是根据空格将字符串拆分为数组,然后根据这些部分计算长度,但在我的尝试中,更长的字符串最终被错误地拆分。

最佳答案

寻找中间前后的第一个空格,并选择离中间最近的一个。

例子:

var s = "This is a long string";

var middle = Math.floor(s.length / 2);
var before = s.lastIndexOf(' ', middle);
var after = s.indexOf(' ', middle + 1);

if (middle - before < after - middle) {
middle = before;
} else {
middle = after;
}

var s1 = s.substr(0, middle);
var s2 = s.substr(middle + 1);

演示:http://jsfiddle.net/7RNBu/

(此代码假定中间两边实际上都有空格。您还需要添加检查 beforeafter 是否为 -1.)

编辑:

我在节点中谈到的检查将像这样正确地完成:

if (before == -1 || (after != -1 && middle - before >= after - middle)) {
middle = after;
} else {
middle = before;
}

这是一个 fiddle ,您可以在其中编辑文本并立即查看结果:http://jsfiddle.net/Guffa/7RNBu/11/

关于javascript - 按单词将字符串分成两半,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18087416/

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