正则表达式有问题

时间:2015-04-28 15:33:34

标签: javascript regex

我在ASP文件中用Javascript编写了一个正则表达式。

var re = new RegExp("<h2>Dollarkurs\sAktuell<\/h2><\/div>"+
        "<div[^>?]+><div><table>"+
        "<colgroup><col[^>?]+><col><col[^>?]+><\/colgroup>"+
        "<tbody><tr><td[^>?]+>Kurs<\/td>"+
        "<td[^>?]+>([^\s^<?]+)\s*<span[^>?]+>[^>?]+><\/span>"+
        "<span[^>?]+><\/span>"+
        "<\/td><\/tr><tr>"+
        "<td[^>?]+>Kurszeit<\/td><td[^>?]+>"+
        "^(([0-1]?[0-9])|([2][0-3])):([0-5]?[0-9])(:([0-5]?[0-9]))?$\sUhr"+
        "<\/td><\/tr><tr>"+
        "<td[^>?]+>Kursdatum<\/td><td[^>?]+>"+
        "([0-9\.]+)<\/td>", "gmi");

    var mres = re.exec(htmlTxt);

htmlTxt是(网页www.finanzen.net/devisen/dollarkurs的一部分): HTML CODE enter image description here

但是Object mres为null。如何解决这个问题呢?我需要Object mres。

What I need:
mres[0] is 1,0947
mres[1] is 16:00:00
mres[2] is 28.04.2015

THX很多!

1 个答案:

答案 0 :(得分:0)

@Fede

我找到了问题。

+0.58% 16:00:00 Uhr 的正则​​表达式错误。< / p>

16:00:00 Uhr

solution: ^(([0-1]?[0-9])|([2][0-3])):([0-5]?[0-9])(:([0-5]?[0-9]))?\sUhr

+0.58%

solution: (-)?\d+\,?\d{0,2}%