JavaScript正则表达式来提取标题内容

JavaScript regular expression to extracting title content

本文关键字:标题 提取 正则表达式 JavaScript      更新时间:2023-09-26

我想使用正则表达式从输入中提取标题

var str = '<a href="http://example/caraft.html" title="Queen Size">'; 
var pat = "title="([^"]+?)";
var result = str.match(pat);

输出如下:title="大号"

输出需求:大号

暂时我已经通过使用子串实现了

result = result.substring(6, (result.length-1));

我想不出用正则表达式做这件事的方法。
感谢先进的

如果您需要regexp,请尝试以下操作:

var str = '<a href="http://example/caraft.html" title="Queen Size">'; 
var pat = 'title="([^'"]+)?"';
var result = str.match(pat);

试试这个:-https://jsfiddle.net/ombtkp6p/

jQuery(function($) {
  var str = '<a href="http://example/caraft.html" title="Queen Size">';
  var result = $(str).attr("title");
})

JavaScript解决方案:-

var str = '<a href="http://example/caraft.html" title="Queen Size">'; 
var temp = document.createElement('div');
temp.innerHTML = str;
var htmlObject = temp.firstChild;
var result = htmlObject.getAttribute("title")
var str = '<a href="http://example/caraft.html" title="Queen Size">',
    pat = 'title="([^"]+?)"',
    result = str.match(pat);
console.log(result[1]);

您的模式中的引号字符(")有一些问题。此外,str.match()返回一个数组,该数组包含括号捕获的匹配结果。

或者,您可以为您的模式使用Javascript regex语法:

var pat = /title="([^"]+?)"/;