我需要以下html代码中选定的<option></option>
代码之间的文字:
<select>
<option value="me=A29S2L940CQWBD" selected="selected">First</option>
<option value="search-alias=aps">Second</option>
</select>
我尝试了/"selected">[a-zA-Z0-9 ]*/
但是我正在'“选中”&gt;首先'这是好的,但我想尝试“First”。
请纠正我的正则表达并帮助我。
答案 0 :(得分:2)
在JavaScript中:
var str = '<select><option value="me=A29S2L940CQWBD" selected="selected">First</option><option value="search-alias=aps">Second</option></select>';
console.log(str.match(/"selected">([a-zA-Z0-9]+)/)[1]);
答案 1 :(得分:0)
嗯,我得到了这个东西:
(?<="selected">)(.*)<
无法摆脱最后的'&lt;'标志(正则表达式应该是(?<="selected">).*(?=<)
,但由于某种原因,它不能用于记事本++),但你可以从那里抓取第一个匹配的组
答案 2 :(得分:0)
我需要选定的<option></option>
之间的文字
如果您只需要First
和Second
作为输出,则可以在没有正则表达式的情况下执行此操作:
完整代码:
<script>
function getOp(a)
{
alert(a);
}
</script>
<select>
<option class="sel" value="me=A29S2L940CQWBD" selected="selected" onclick="getOp(this.innerHTML)">First</option>
<option class="sel" value="search-alias=aps" onclick="getOp(this.innerHTML)">Second</option>
</select>