gpt4 book ai didi

javascript - 正则表达式捕获除连续换行符之外的所有内容

转载 作者:行者123 更新时间:2023-11-28 20:42:36 25 4
gpt4 key购买 nike

除了遇到两条或更多换行符之外,捕获所有内容的最佳方法是什么?

例如:

name1
address1
zipcode

name2
address2
zipcode

name3
address3
zipcode

我考虑的一个正则表达式是/[^\n\n]*\s*/g。但当它遇到单个 \n 字符时,就会停止。

我考虑的另一种方法是/((?:.*(?=\n\n)))\s*/g。但这似乎只捕获最后一行,忽略前面的行。

处理类似情况的最佳方法是什么?

最佳答案

更新

您可以考虑将可变长度分隔符替换为一些未出现在处理后的文本中的已知固定长度字符串,然后进行拆分。例如:

> var s = "Hi\n\n\nBye\nCiao";
> var x = s.replace(/\n{2,}/, "#");
> x.split("#");
["Hi", "Bye
Ciao"]

我认为这是一个优雅的解决方案。您还可以使用以下有些人为的正则表达式

> s.match(/((?!\n{2,})[\s\S])+/g);
["Hi", "
Bye
Ciao"]

然后通过将 trim() 字符串方法应用于其成员来处理结果数组,以便消除每个数组开头/结尾处的任何 \n数组中的字符串。

关于javascript - 正则表达式捕获除连续换行符之外的所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14108338/

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