Первая проблема, которую я вижу, состоит в том, что вы передаете конструктору RegExp
литеральный объект регулярного выражения.Это не проблема как таковая, но нет смысла использовать конструктор RegExp
, если вы можете сделать это с помощью литерала регулярных выражений.
Вы можете использовать конструктор RegExp
как этот
reg = new RegExp("<option value='(.+?)'>(.+?)<\/option>");
или, альтернативно, вы можете использовать регулярное выражение, подобное этому
reg = /<option value='(.+?)'>(.+?)<\/option>/;
Теперь
reg.exec("<option value='numeric'>data</option>")
дает
["<option value='numeric'>data</option>", "numeric", "data"]
Наконец, синтаксический анализ HTML с регулярными выражениями нехорошая идея.Подробнее об этом здесь RegEx соответствует открытым тегам, кроме автономных тегов XHTML