javascript - 使用javascript正则表达式,从网页获取元标记数据

标签 javascript jquery regex tags meta

我想使用 javascript(jquery) 和正则表达式获取元标记数据。

这里有一些元标记。

<meta name="description" content="Amazon.com : Google Chromecast HDMI Streaming Media Player : Streaming Media Clients : Electronics" />
<meta name="title" content="Amazon.com : Google Chromecast HDMI Streaming Media Player : Streaming Media Clients : Electronics" />

我可以使用以下函数从这些表单中获取内容。

function getProductInfo(attr) {
    var m = $("meta[name="+attr+"]");
    var content = m.attr("content");
    return content; 
}
if(!title) var title = getProductInfo('title');

但是有时有不同形式的元标记,例如

<meta property="title" content="....">
<meta property="og:title" content="....">
<meta name="title" description="....">

这就是我考虑使用正则表达式的原因。但我不知道。 请给我一个提示。谢谢。

最佳答案

也可以使用正则表达式:

<meta[^>]+content="([^")]*)"

结果:

$matches Array:
(
    [0] => Array
    (
        [0] => <meta name="description" content="Amazon.com : Google Chromecast HDMI Streaming Media Player : Streaming Media Clients : Electronics"
        [1] => <meta name="title" content="Amazon.com : Google Chromecast HDMI Streaming Media Player : Streaming Media Clients : Electronics"
    )

    [1] => Array
    (
        [0] => Amazon.com : Google Chromecast HDMI Streaming Media Player : Streaming Media Clients : Electronics
        [1] => Amazon.com : Google Chromecast HDMI Streaming Media Player : Streaming Media Clients : Electronics
    )
)

关于javascript - 使用javascript正则表达式,从网页获取元标记数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20677558/

相关文章:

javascript - 使用 JQuery ajax 在 DOM 操作后附加事件

java - 短语的正则表达式包含文字和数字,但并非所有短语都是仅具有固定范围长度的数字

javascript - SignalR 变量正在重置

javascript - 如何将 "转换为双引号

javascript - 通过 POST 将文件传递给 NodeJS,然后传递给另一个 API,而不保存在磁盘上

jquery - 在 jQuery 中选择所有 id 不为空的元素

java - 如何检测和删除 URL 中的一句话?

javascript - 奇怪的结果还是我错了?

javascript - id 的 Tabulator.js 可访问性不起作用

javascript - 表行上的 ReactJS/Semantic-UI 打印错误