Javascript 正则表达式地址提取
我正经历着最困难的时刻来正确处理这件事 我有下面的HTML,我正试图解析地址“100e-Faither” 佛罗里达州梅特兰市,邮编32751,邮编:32751 我试图将上面的html传递给这组代码,但我没有得到匹配项,我不明白为什么,即使我在regex测试仪中尝试了它,它仍然有效。我快疯了Javascript 正则表达式地址提取,javascript,regex,Javascript,Regex,我正经历着最困难的时刻来正确处理这件事 我有下面的HTML,我正试图解析地址“100e-Faither” 佛罗里达州梅特兰市,邮编32751,邮编:32751 我试图将上面的html传递给这组代码,但我没有得到匹配项,我不明白为什么,即使我在regex测试仪中尝试了它,它仍然有效。我快疯了 function demoShowMatchClick(addressToPull) { var re = new RegExp("\s{5}(.*?<br>)");
function demoShowMatchClick(addressToPull) {
var re = new RegExp("\s{5}(.*?<br>)");
var m = re.exec(addressToPull);
if (m == null) {
alert("No match");
} else {
var s = "Match at position " + m.index + ":\n";
for (i = 0; i < m.length; i++) {
s = s + m[i] + "\n";
}
alert(s);
}
}
函数demoShowMatchClick(addressToPull){
var re=new RegExp(“\s{5}(.*?
)”;
var m=重新执行(addressToPull);
如果(m==null){
警惕(“不匹配”);
}否则{
var s=“匹配位置”+m.index+“:\n”;
对于(i=0;i
我在这里错过了什么?这对我来说很有用:
var re = new RegExp("\\s{5}(.*?<br>)");
var re=new RegExp(“\\s{5}(.*?
)”);
正在逃离\s
如果使用literal regexp语法,则不必担心字符串转义:
var re = /\s{5}(.*?<br>)/
var re=/\s{5}(.*?
)/
您必须对功能进行以下更改
函数demoShowMatchClick(addressToPull){
var re=\s{5}(.*?
);
var m=重新执行(addressToPull);
if(重新测试(addressToPull)){
var s=“匹配位置”+m.index+“:\n”;
对于(i=0;i
查看我的答案,但是,我不确定匹配特定数量的空格是否是一个好主意。使用正则表达式解析HTML,是吗?谢谢。除了出于某种原因,我从这个函数中得到了两倍的地址。100e-Faith-Ter,100e-Faith-Ter
函数demoShowMatchClick(addressToPull){var re=/\s{5}(.*?
)/;var m=re.exec(addressToPull);返回m;
var re = /\s{5}(.*?<br>)/
you have to make following changes in your function
function demoShowMatchClick(addressToPull) {
var re = \s{5}(.*?<br>);
var m = re.exec(addressToPull);
if (re.test(addressToPull)) {
var s = "Match at position " + m.index + ":\n";
for (i = 0; i < m.length; i++) {
s = s + m[i] + "\n";
alert(s);
} else {
alert("No match");
}
}
}