从HTML字符串中提取数字然后附加到URL

时间:2011-08-02 09:30:52

标签: javascript jquery html regex

您好我正在尝试从html字符串中获取数字并将它们附加到URL,然后将其写入页面作为示例:

<p id="catId">cat number 2301254187</p>
<script type="text/javascript">
        var itemId = document.getElementById('catId').innerHTML;
        var links = '<a href="http://www.test.com' + catId + '">Go to Catergory</a>';
        document.write(links);

我尝试过类似上面的东西,但是我得到了p标签的全部内容。我是新手,我猜测正则表达式只需要用来提取数字吗?

3 个答案:

答案 0 :(得分:1)

您可以使用简单的正则表达式获取数字

var itemId = document.getElementById('catId').innerHTML.match(/\d+/)[0]

答案 1 :(得分:1)

你是正确的需要使用正则表达式。

<p id="catId">cat number 2301254187</p>
<script type="text/javascript">
    var itemId = document.getElementById('catId').innerHTML.match(/\d+/);

    if (itemId.length) {
        var links = '<a href="http://www.test.com' + itemId[0] + '">Go to Catergory</a>';
        document.write(links);
    }
</script>

请参阅match() method

答案 2 :(得分:0)

不一定,如果字符串始终为cat number NNNNNNNN,则可以使用split。

var itemId = document.getElementById('catId').innerHTML.split(' ')[2];

将字符串拆分为由空格分隔的数组,然后显示第三个元素,这将是您的数字。