
[英]How to extract specific text from a html tag that is dynamically placed in the code
[英]How to extract the hyperlink text from a <a> html tag?
给定一个包含'blabla <a href="address">text</a> blabla'
的字符串,我想从中提取'text'
。
regexp doc 建议使用'<(\\w+).*>.*</\\1>'
表达式,但它提取了整个<a> ... </a>
东西。
当然,我可以像这样继续使用strfind
:
line = 'blabla <a href="address">text</a> blabla';
atag = regexp(line,'<(\w+).*>.*</\1>','match', 'once');
from = strfind(atag, '>');
to = strfind(atag, '<');
text = atag((from(1)+1):(to(2)-1))
,但是,我可以使用另一个表达式立即查找text
吗?
您可以在 Matlab 中使用extractHTMLText
函数,您可以在以下链接中阅读它。 获得所需输出的示例:
line = 'blabla <a href="address">text</a> blabla';
l = split(extractHTMLText(line), ' ');
l{2}
如果您不想使用内置函数,您可以按照尼克的建议使用正则表达式。
line = 'blabla <a href="address">text</a> blabla';
[atag,tok] = regexp(line,'<(\w+).*>(.*?)</\1>','match','tokens');
t = tok(1,1){1};
t{2}
你会得到想要的输出
如果你正在使用 JQuery,试试这个。 不需要正则表达式。 但是,如果 DOM 很大,这可能会对性能产生负面影响。
$jqueryobj = $(line);
var text = $jqueryobj.find("a").text();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.