求正则表达式,提取select中选项值。
象这样的:
<select size='1' name='BM_NAME'><option value=普通用户>普通用户</option><option value=办事处主任>办事处主任</option><option value=片区经理>片区经理</option><option value=部门主任>部门主任</option><option value=领导层>领导层</option></select>
我要提取里面的选项值,然后放到一个数组中。
bmna(0)=普通用户
bmna(1)=办事处主任
bmna(2)=片区经理
bmna(3)=部门主任
....
应该怎么写代码呢?
我改写了一个网友的代码。
Dim Exps
Str=BMLI
Set Exps= New Regexp
Exps.Pattern = "<option.@>(.@)</option>" '顺便帮我解释一下要是有几个(),那么Matches保存的是什么?
Exps.Ignorecase = True
Exps.Global = True
Set Matches =Exps.Execute(Str)
For Each Match In Matches
response.write Match.Submatches(0)&"<br/>"
Next
Set Matches =Nothing
Set Exps=Nothing
匹配不了??????????????呵呵。
问题点数:50、回复次数:3Top
1 楼cxy89173(晓勇)回复于 2005-05-01 20:30:41 得分 0
<option(.*)?>(.*)?</option> 写成这个。好象能匹配,就是不值得怎么取出来。有两对括号了。Top
2 楼scoutlin(挖摸追挖摸追挖摸追..)回复于 2005-05-01 21:45:09 得分 40
<Script Language=Vbscript>
Dim Exps
Str="<select size='1' name='BM_NAME'><option value=普通用户>普通用户</option><option value=办事处主任>办事处主任</option><option value=片区经理>片区经理</option><option value=部门主任>部门主任</option><option value=领导层>领导层</option></select>"
Set Exps= New Regexp
Exps.Pattern = "<option.*?>(.*?)</option>"
Exps.Ignorecase = True
Exps.Global = True
Set Matches =Exps.Execute(Str)
For Each Match In Matches
Msgbox Match.Submatches(0)
Next
Set Matches =Nothing
Set Exps=Nothing
</Script>Top
3 楼lark3(海鸥)回复于 2005-05-04 18:25:00 得分 10
mark
Top




