Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/438.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript正则表达式-将文本拆分为句子。如果前面没有数字_Javascript_Regex - Fatal编程技术网

javascript正则表达式-将文本拆分为句子。如果前面没有数字

javascript正则表达式-将文本拆分为句子。如果前面没有数字,javascript,regex,Javascript,Regex,我尝试使用以下方法将文本解析为句子: srt.replace(/(\.+|:|!|\?)(\s|\n|\r|\r\n)/gm, "$1$2|").split("|"); 这很有效,但是。。。如果一个句子以一个列表编号开头(即“1.一些单词”),我得到:['1','some words'] 这是我第一次使用正则表达式,虽然我知道有一种方法可以回头看,但我没能使用它。 如何将正则表达式更改为仅在拆分。如果前面没有数字字符?最后使用了str.replace(/(?) 我相信有一种更漂亮的方式来编写这

我尝试使用以下方法将文本解析为句子:

srt.replace(/(\.+|:|!|\?)(\s|\n|\r|\r\n)/gm, "$1$2|").split("|");
这很有效,但是。。。如果一个句子以一个列表编号开头(即
“1.一些单词”
),我得到:
['1','some words']

这是我第一次使用正则表达式,虽然我知道有一种方法可以回头看,但我没能使用它。
如何将正则表达式更改为仅在拆分。如果前面没有数字字符?

最后使用了
str.replace(/(?)

我相信有一种更漂亮的方式来编写这个正则表达式,但作为一个noob,我还不知道如何编写。这还包括: 1.如果在以下内容之后有新行,则不拆分: 2.多个点、问号和感叹号


此代码旨在将文本拆分为“想法”,这就是为什么我使用我所使用的条件,可能不是简单的“拆分为句子”的正确逻辑需要。

我看不出你如何区分一个编号的列表和一个以数字结尾的句子。不要按模式分割。
^\d+\。,这意味着你在一行的开头有数字。@evolutionxbox我不会,但在这种情况下,我愿意容忍边缘情况。