gpt4 book ai didi

javascript - 使用未知长度字符串拆分 JavaScript 字符串,例如\n

转载 作者:行者123 更新时间:2023-12-02 22:52:10 25 4
gpt4 key购买 nike

我有一个从后端生成的字符串,在不同位置具有未知长度的 \n 。这意味着我有类似的东西:

Lorem Ipsum\n\n\dolor sit amet\n\n\n\n\n,consecteur adipiscing\nelit

有没有办法使用随机长度 \n 字符将此字符串拆分为数组?

编辑:以下是一些额外的技术细节:

我正在使用 Apache POIJEE 来解析 Word 文档,因此我作为响应返回的字符串是由库生成的,我无法控制它。我已经浏览了该库使用的类,它确实在完成解析段落时添加了 \n 字符,它还为标题和副标题添加了 \t 字符,这里是如何精确返回字符串的最小化示例:

"I.\tIntroduction\t3\nII.\tECMA International :\t3\nIII.\tECMAScript & JavaScript :\t3\nIV.\tEditions ECMAScript :\t4\nV.\tECMAScript 2015 :\t5\na.\tNouvelles fonctionnalités « Number » et « Math » :\t5\n�?�\tEntiers Littéraux :\t5\n�?�\tNouvelles propriétés pour les objets « Number » et « Math » :\t5\nb.\tNouvelles fonctionnalités pour les strings :\t6\nc.\tLet & Const :\t6\n�?�\tLet :\t7\n�?�\tConst :\t8\nd.\tFonctions fléchées :\t8\ne.\tClasses :\t10\n�?�\tDéfinition d�??une classe :\t10\n�?�\tHéritage :\t11\n�?�\tMéthodes et propriétés statiques :\t12\n�?�\tGetters & Setters :\t12\nf.\tModules :\t13\ng.\tParamètres par défaut :\t14\nh.\tLa boucle For-Of :\t14\ni.\tGénérateurs :\t15\nj.\tPromises :\t15\nVI.\tConclusion :\t18\nVII.\tBibliographie :\t19\n\n\n\n"

这表示文档的摘要(整个字符串的一部分)。

直接将此字符串传递给 split 可以,但像下面这样传递返回的数据则不行:

ajax.post('tech/technology',`technology=${id}`)
.then((data) => {
console.log(data.response.split(/\n+/));
})

最佳答案

只需按照 \n+ 的正则表达式进行拆分,该表达式将在一个或多个 \n 字符处拆分字符串:

const str = 'Lorem Ipsum\n\n\dolor sit amet\n\n\n\n\n,consecteur adipiscing\nelit';
console.log(str.split(/\n+/));

请注意,分割单个 \n 字符然后过滤掉空字符串(从而避免使用正则表达式)实际上可能更有效:

const str = 'Lorem Ipsum\n\n\dolor sit amet\n\n\n\n\n,consecteur adipiscing\nelit';

console.log(str.split('\n').filter(Boolean));

关于javascript - 使用未知长度字符串拆分 JavaScript 字符串,例如\n,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58146427/

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