Javascript 获取html标记之间的字符串

Javascript 获取html标记之间的字符串,javascript,regex,Javascript,Regex,我正在编写一个用户脚本,并试图获取这些粗体标记的内部文本。不幸的是,我不能使用get-getelementbyid或任何getelement函数,因为我不需要更多的粗体标记,所以我尝试使用正则表达式。我将如何获得STRING123、STRING456等等 我尝试了(?(.*)\给了我全部的刺,但我只想要里面的部分 <b style="color:#ffffff;text-transform:uppercase;font-size:10pt;font-weight:bold">STRI

我正在编写一个用户脚本,并试图获取这些粗体标记的内部文本。不幸的是,我不能使用get-getelementbyid或任何getelement函数,因为我不需要更多的粗体标记,所以我尝试使用正则表达式。我将如何获得STRING123、STRING456等等

我尝试了
(?(.*)\
给了我全部的刺,但我只想要里面的部分

<b style="color:#ffffff;text-transform:uppercase;font-size:10pt;font-weight:bold">STRING123</b>
<b style="color:#ffffff;text-transform:uppercase;font-size:10pt;font-weight:bold">STRING456</b>
<b style="color:#ffffff;text-transform:uppercase;font-size:10pt;font-weight:bold">STRING789</b>
<b style="color:#ffffff;text-transform:uppercase;font-size:10pt;font-weight:bold">STRING101112</b>
<b style="color:#ffffff;text-transform:uppercase;font-size:10pt;font-weight:bold">STRING131415</b>
STRING123
STRING456
细绳789
字符串101112
弦131415

您的正则表达式很好。匹配将返回整个字符串,但您只需要
$1
=特定匹配的第一组。 因此,根据编程语言的不同,它要么是
结果(“$1”)
要么是
组(1)
等等

编辑

var myString = "style=color:#ffffff;text-transform:uppercase;font-size:10pt...";
var myRegexp = /bold\"\>(.*)\<\/b\>/g;
var match = myRegexp.exec(myString);
alert(match[1]);
var myString=“style=color:#ffffff;文本转换:大写;字体大小:10pt…”;
var myRegexp=/bold\“\>(.*)\/g;
var match=myRegexp.exec(myString);
警报(匹配[1]);
我想这样试试

/<b[^>]*bold[^>]*>([^<]*)<\/b>/g

/]*bold[^>]*>([^如果想要的
b
元素使用内联样式定义了其字体大小,例如,您可以使用

var i, b,
    bolds = document.getElementsByTagName('b');

for ( i = 0; i < bolds.length; i++ ) {
    b = bolds[i];  

    if ( b.style.fontWeight == 'bold' || b.style.fontWeight == '700' ) {
        console.log( b.innerText || b.textContent ); 
    }        
}
var i,b,
粗体=document.getElementsByTagName('b');
对于(i=0;i
您使用的是什么语言?为什么不能使用getElementById?@Shimon Rachlenko javascript没有id可以调用
getElementsByTagName
,获取每个字体的字体大小css,并查看是否设置为
bold
。然后使用
innerHTML
获取文本。如果可以使用jquery,任务就简单到
$('b')。text()
@ShimonRachlenko实际上应该是
$('b[style$=bold]')。text()
。很抱歉,我使用的是javascriptit,它可以工作,但返回粗体“>STRING我怎么才能得到“STRING123”text@Mr.1.0
match[1]
返回当前正则表达式的
bold>字符串
,不仅仅是
匹配
他只想要样式中带有
粗体的。啊……好吧,更新了我的答案,认为
可能是指“粗体”,但他原来的regexp看起来特别是“粗体”“。在
标记中包含这一点似乎是多余的,但我们并不能解释为什么…还有其他
标记这些特定的
标记的粗体字体