Javascript在文本区域中输入两次(/[\n\r]/gm)未检测到
我在github上传了我的作品,你们可以在那里查看代码> JS通过keydown触发并将创建 我按段落(新行)对结果进行分类,JS将使用Regexp(/[\n\r]/gm)从数组中删除新行 但是,当我发送超过2个空换行符,然后只继续键入时,regexp不会检测到它 textarea输入示例:Javascript在文本区域中输入两次(/[\n\r]/gm)未检测到,javascript,arrays,Javascript,Arrays,我在github上传了我的作品,你们可以在那里查看代码> JS通过keydown触发并将创建 我按段落(新行)对结果进行分类,JS将使用Regexp(/[\n\r]/gm)从数组中删除新行 但是,当我发送超过2个空换行符,然后只继续键入时,regexp不会检测到它 textarea输入示例: PO PO PO PO <--This part detected as newline--> PO <--This part detected as newline--> <
PO PO PO PO
<--This part detected as newline-->
PO
<--This part detected as newline-->
<--This part unable to detect as newline-->
PO
删除数组中空字符串的我的代码:
for(a=0;a<paracountarray.length;a++){
if(paracountarray[a] == ""){
paracountarray.splice(a,1)
}
}
对于(a=0;a您可以使用regexp(/[\r\n]+/gm/[\r\n]+/gm
一次检查一个或多个新行跳转
function paracount(){
var crinput=document.getElementById(“textarea1”).value
var paracountarray=crinput.split(/[\r\n]+/gm);
log(paracountarray);
}
您可以使用regexp(/[\r\n]+/gm/[\r\n]+/gm
一次检查一个或多个新行跳转
function paracount(){
var crinput=document.getElementById(“textarea1”).value
var paracountarray=crinput.split(/[\r\n]+/gm);
log(paracountarray);
}
如果没有一个有效的示例,我不确定我是否掌握了您想要的内容。在控制台中运行代码时,它“对我有效”,给了我预期的结果:一个额外的空数组元素:
>> var testStr = 'PO PO PO PO\n\nPO\n\n\nPO'
>> testStr.split(/[\n\r]/gm)
Array [ "PO PO PO PO", "", "PO", "", "", "PO" ]
<> P>你可能想要不同的结果吗?考虑一次或多次的匹配:
这将把15个连续的换行符计算为一个段落分隔符。因此,在您的示例中,这将为您提供三个段落。在前面的示例中:
>> var testStr = 'PO PO PO PO\n\nPO\n\n\nPO'
>> testStr.split(/[\n\r]+/gm)
Array [ "PO PO PO PO", "PO", "PO" ]
如果没有一个有效的示例,我不确定我是否掌握了您想要的内容。在控制台中运行代码时,它“适合我”,给了我我所期望的:一个额外的空数组元素:
>> var testStr = 'PO PO PO PO\n\nPO\n\n\nPO'
>> testStr.split(/[\n\r]/gm)
Array [ "PO PO PO PO", "", "PO", "", "", "PO" ]
<> P>你可能想要不同的结果吗?考虑一次或多次的匹配:
这将把15个连续的换行符计算为一个段落分隔符。因此,在您的示例中,这将为您提供三个段落。在前面的示例中:
>> var testStr = 'PO PO PO PO\n\nPO\n\n\nPO'
>> testStr.split(/[\n\r]+/gm)
Array [ "PO PO PO PO", "PO", "PO" ]