gpt4 book ai didi

'.' 上的 Javascript 中断字符串,基于前面的连续字符

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:44:49 28 4
gpt4 key购买 nike

我有一个字符串需要拆分成段落。我可以使用 .split('.') 轻松完成此操作,并附加一个“.”。 char 到每个字符串 - 然后我有一个句子数组。尽管遇到问题,因为字符串的名称可能带有缩写的中间名 - 例如 John D. Doe。

如果不是 Javascript,我会使用 lookbehind,但我做不到。

如何将字符串拆分为一组句子,由两个或多个字母数字字符后跟句号分隔?

认为这会起作用 - .split(/(?:\w{2}\.)\s/g) - 但它不包括匹配中的定界符,而是我丢失每个拆分句子的最后一个字符和句号。

最佳答案

您可以通过反转字符串和正则表达式并使用前瞻来模拟后视。引用:http://blog.stevenlevithan.com/archives/mimic-lookbehind-javascript

String.prototype.reverse = function () {
return this.split('').reverse().join('');
};
var string = "John D. Doe and Mrs. DoubtFire went to Mt. Washington on 25 Feb. 1999. Another sentence.";
var newString = string.reverse().split(/\s(?=\.\w{4})/).map( function(a){ return a.reverse(); } ).reverse();

编辑:数组上还需要另一个 .reverse() 否则你的句子顺序会错误

关于 '.' 上的 Javascript 中断字符串,基于前面的连续字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20677997/

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