RegEx 只查看 HTML 标签内的文本?
RegEx to only look at text inside HTML tags?
我最近开始 learning/using 正则表达式。
有没有办法避免匹配 HTML 标签属性或属于标签属性的词?
例如:
<p style=“position: absolute”>position: </p>
我试过了
/\bposition\b\W\s/g
但这两个实例都匹配。
我只能匹配第二个“位置:”吗?
澄清:
我正在尝试在文档中搜索用户输入的词并将其替换为包含这些词的 span
元素 - 这类似于“Ctrl + F”。仅仅拥有文本是不够的,因为一旦文本被 span
元素替换,我还需要一种方法来更新文档。
匹配 HTML / XML 标签的正则表达式是 /(<([^>]+)>)/ig
。也许这就是您要找的。
let str = '<p style="position: absolute">position: </p>';
const strWithoutTag = str.replace(/(<([^>]+)>)/ig, '');
console.log(strWithoutTag);
免责声明:使用 document.innerText
和其他 DOM API 而不是 Regex。
匹配 HTML 个标签:
<.+?>/g
匹配 HTML 标签内的所有内容(也应处理嵌套标签):
/(?<=<.+.>)(.*?)(?=<.*\/.+.?>)/g
您可以尝试正则表达式来匹配您的温度,它与第二个“位置:”相匹配。
/(?=\b.*(?<yourKeyword>position).*\b)(?<=<[^]*>)([^<>]+)(?=<\/([^<>]*)>)/g
我最近开始 learning/using 正则表达式。
有没有办法避免匹配 HTML 标签属性或属于标签属性的词?
例如:
<p style=“position: absolute”>position: </p>
我试过了
/\bposition\b\W\s/g
但这两个实例都匹配。
我只能匹配第二个“位置:”吗?
澄清:
我正在尝试在文档中搜索用户输入的词并将其替换为包含这些词的 span
元素 - 这类似于“Ctrl + F”。仅仅拥有文本是不够的,因为一旦文本被 span
元素替换,我还需要一种方法来更新文档。
匹配 HTML / XML 标签的正则表达式是 /(<([^>]+)>)/ig
。也许这就是您要找的。
let str = '<p style="position: absolute">position: </p>';
const strWithoutTag = str.replace(/(<([^>]+)>)/ig, '');
console.log(strWithoutTag);
免责声明:使用 document.innerText
和其他 DOM API 而不是 Regex。
匹配 HTML 个标签:
<.+?>/g
匹配 HTML 标签内的所有内容(也应处理嵌套标签):
/(?<=<.+.>)(.*?)(?=<.*\/.+.?>)/g
您可以尝试正则表达式来匹配您的温度,它与第二个“位置:”相匹配。
/(?=\b.*(?<yourKeyword>position).*\b)(?<=<[^]*>)([^<>]+)(?=<\/([^<>]*)>)/g