Javascript 丹麦电话号码需要regex

Javascript 丹麦电话号码需要regex,javascript,regex,Javascript,Regex,我需要一个正则表达式从字符串中提取丹麦电话号码。我知道了 var phrase = "Text text text 11 22 33 44 text text."; phrase = phrase.replace(/^((\(?\+45\)?)?)(\s?\d{2}\s?\d{2}\s?\d{2}\s?\d{2})$/, "replace phone number"); alert(phrase); 我找到了此链接,但它不起作用: 问题是^和$,它们分别匹配字符串的开头和结尾。因为数字在字符串

我需要一个正则表达式从字符串中提取丹麦电话号码。我知道了

var phrase = "Text text text 11 22 33 44 text text.";
phrase = phrase.replace(/^((\(?\+45\)?)?)(\s?\d{2}\s?\d{2}\s?\d{2}\s?\d{2})$/, "replace phone number");
alert(phrase);
我找到了此链接,但它不起作用:
问题是
^
$
,它们分别匹配字符串的开头和结尾。因为数字在字符串的中间,它们不匹配。移除它们,它就会工作:

> var phrase = "Text text text 11 22 33 44 text text.";
undefined
> phrase = phrase.replace(/((\(?\+45\)?)?)(\s?\d{2}\s?\d{2}\s?\d{2}\s?\d{2})/, " replace phone number");
'Text text text replace phone number text text.'

在您试图使用的表达式中,只有当电话号码是字符串中唯一的内容时,它才会匹配,因为“^”匹配字符串的开头,$匹配字符串的结尾

我相信这是一个简单得多的正则表达式,可以工作:

/([0-9]{2} ){3}[0-9]{2}/
因此,您可以说textStr.replace(/([0-9]{2}){3}[0-9]{2}/g,'newstring')

点击这里:

我会选择:

/(?:45\s)?(?:\d{2}\s){3}\d{2}/
这将保留先前正则表达式具有的可选国家/地区代码。为了提高效率,我在这里使用非捕获组


很高兴看到一位前桑德兰门将深入研究网络开发领域。