Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/405.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 用于匹配N位数加连续数的正则表达式_Javascript_Regex_String_Regex Lookarounds_Regex Group - Fatal编程技术网

Javascript 用于匹配N位数加连续数的正则表达式

Javascript 用于匹配N位数加连续数的正则表达式,javascript,regex,string,regex-lookarounds,regex-group,Javascript,Regex,String,Regex Lookarounds,Regex Group,我正在尝试使用node.js上的javascript清理输入字符串。一些输入字符串可能包含我想删除的电话号码(或随机数字序列)。例如: 输入字符串:Terrace 07541207031 RDL 18.02 清洁后,我希望字符串为:Terrace RDL 18.02 我想检测数字(比如大于4位数)并将其删除。可能与您所需的输入匹配 (\s)([0-9]{4,})(\s?) 如果要匹配任何4位数字加上数字,只需删除左右空格检查边界即可: ([0-9]{4,}) JavaScript演示 co

我正在尝试使用node.js上的javascript清理输入字符串。一些输入字符串可能包含我想删除的电话号码(或随机数字序列)。例如:

输入字符串:
Terrace 07541207031 RDL 18.02

清洁后,我希望字符串为:
Terrace RDL 18.02

我想检测数字(比如大于4位数)并将其删除。

可能与您所需的输入匹配

(\s)([0-9]{4,})(\s?)
如果要匹配任何4位数字加上数字,只需删除左右空格检查边界即可:

([0-9]{4,})
JavaScript演示
const regex=/(\s)([0-9]{4,})(\s?)/gm;
const str=`Terrace 07541207031 RDL 18.02
露台07541 RDL 18.02
露台075adf8989 RDL 18.02
露台075adf898 RDL 18.02
075898荷兰盾18.02
露台RDL989https://regex101.com/r/FjZqaF/1/codegen?language=javascript`;
让m;
while((m=regex.exec(str))!==null){
//这是避免具有零宽度匹配的无限循环所必需的
if(m.index==regex.lastIndex){
regex.lastIndex++;
}
//可以通过'm`-变量访问结果。
m、 forEach((匹配,组索引)=>{
log(`Found match,group${groupIndex}:${match}`);
});

}
用空字符串替换
\d{4,}
。@PushpeshKumarRajwanshi我得到一个语法错误:正则表达式上的标记无效或意外。@user7331538
“Terrace 07541207031 RDL 18.02”。替换(/\d{4,}/,”)
似乎工作正常,在Chrome上没有语法错误。ps,如果你想去掉多余的空间,你也可以做
/\s\d{4,}/
@Keith我对正则表达式没有经验,以前我只使用了'\d{4,}'而不是'/\d{4,}/',谢谢你的帮助。