有人可以推荐一个正则表达式来在选择和取消选择项目时返回值,如下所示。
<option value="32_1002_ACCT1001" selected="selected">ACCT1001 -- Accounting 1a</option>
<option value="32_1002_ACCT1002">ACCT1002 -- Accounting 1b</option>
Run Code Online (Sandbox Code Playgroud)
我的正则表达式目前仅适用于下面看到的未选中的选项。
(<option value="([^"]+)">([^<]+)<\/option>)
Run Code Online (Sandbox Code Playgroud)
编辑:
感谢你们的伟大回应,但是我应该更详细和具体一点。
我在屏幕刮板提取器模式中使用它,如下所示:
<option value="~@COURSE_ID@~">~@COURSE_CODE@~ -- ~@COURSE_NAME@~</option>
Run Code Online (Sandbox Code Playgroud)
其中 ~@COURSE_ID@~ 指定以下正则表达式查询:
([^"]+)
Run Code Online (Sandbox Code Playgroud)
适用于所有选项标签,除了已经选择的第一个标签。
我目前正在测试您的建议,但如果有人想加入一个非常好的解决方案,那就太好了。
我真的很纠结这个,似乎没有任何效果!
首先,使用正则表达式来解析 HTML 是个坏主意。使用一些 html 解析器。(我厌倦了写这个,但我只是把它作为第一句话,因为人们往往会在没有这个声明的情况下立即投反对票:))
无论如何,只需修改您的正则表达式以考虑这样的所有属性
(<option[^>]*?>([^<]+)<\/option>)
Run Code Online (Sandbox Code Playgroud)
好吧,我不是说它是最佳的,只是对你的修改最少