javascript - 在 javascript 中拆分 HTML 以存储在数据库中

标签 javascript regex

我必须从旧网站中分离出一 block HTML 来存储在数据库中。我使用 Node.js 和 jQuery 插件来进行基本的拆分,但是有 3 个部分我无法拆分。

1) 产品 ID,位于 url 中。该 id 在最后一个/之后开始,并在以下 -

之前停止

2) 价格,在第一个之后开始;并在下面的“”(空格)之前停止

3) 一个名称,从第一个 > 开始,到该字符串“项目列表”之前结束

我不想让人为我做我的工作,但我现在知道如何从弄清楚如何为这些情况提出正则表达式开始。也许朝着正确的方向插入就足够了。

<a href="privateurl/2332/32322-product-name-blah">
<div>
    <span>Product Name Blah item listing</span>
    <div>
        <span>
            Our price:<br />
            &#36;0.25 USD
        </span>
    </div>
</div>
</a>

它被简化了一点,但你可以将我需要拆分的 ID、名称和价格显示出来。

最佳答案

var s = '<a href="privateurl/2332/32322-product-name-blah">\n\
<div>\n\
    <span>Product Name Blah item listing</span>\n\
    <div>\n\
        <span>\n\
            Our price:<br />\n\
            &#36;0.25 USD\n\
        </span>\n\
    </div>\n\
</div>\n\
</a>';

s.match(/\/([^/-]*)-(?!.*\/.*)/)[1] // => "32322"
s.match(/;([^ ]+)/)[1]              // => "0.25"
s.match(/>(.*?) item listing/i)[1]  // => "Product Name Blah"

关于javascript - 在 javascript 中拆分 HTML 以存储在数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21956237/

相关文章:

javascript - 以一种颜色显示的 LinearGradient

regex - 如何替换 lua "in a single pass"中字符串的一部分?

c# - 纬度经度对的正则表达式

javascript - 从键盘输入期间在每 n 个字符后加上破折号并编辑确切数字

javascript - 在 Camunda 进程中,如何使用 JavaScript 和 Spin 从 JSON 中检索 bool 值?

java - 正则表达式:多次提取条目

Python 正则表达式 sub 单个字符

c# - 看看正则表达式背后

javascript - Chrome 扩展 : how can I intercept a cookie?

javascript - 将文本分割为第一个 ";",然后再次分割为第二个 ";"