正则表达式 - 从HTML列表中捕获项目

时间:2013-07-19 11:58:45

标签: html regex

所以我试图通过Regex从这个列表中获取所有可能的选项:

<select id="color" name="colorId" class="btn secondary">
<option value="33941">Baltic</option>
<option value="3">Black</option>
<option value="398695">Bright Cherry Red</option>
<option value="172615">Captain Blue</option>
<option value="254777">Chlorophyll Green</option>
<option value="162672">Cosmic</option>
<option value="34237" selected="selected">Guava</option>
<option value="36993">Hawaiian Blue</option>
<option value="172715">Malachite</option>
<option value="9">Navy</option>
<option value="398694">Obscure Blue</option>
<option value="405740">Quartz Purple</option>
<option value="254790">Silver Grey Chine</option>
<option value="231423">Starfruit Yellow</option>
<option value="405844">Tortuga Green</option>
<option value="14">White</option>
</select>

到目前为止,我有<select id="color" [^>;]+>\s?<option value="\d+?">(\w+|\W+[^</option>\s?<option value="\d+?">;])</option></select>当然与第一个选项匹配,但我不知道如何获得所有这些选项。

1 个答案:

答案 0 :(得分:1)

没有理由为此使用正则表达式。你可以这样做:

var lis = document.getElementById('color').getElementsByTagName('li');

然后你会得到一个很好的元素列表。