1

我解析一个网页,需要获取滑块元素的最小值和最大值。我用 Jsoup 解析的所有页面,但是这个值我无法得到它..它们在 javascript 块中。

<script>
    $(function(){ $("#p_slider").slider({ range:true, step:1000, min:2000, max:49490.00, values:[2000,49490.00], slide:function(event, ui) {
    $("#p_from").val((ui.values[0] != 2000)?ui.values[0]:"");
    $("#p_to").val((ui.values[1] != 49490.00)?ui.values[1]:"");
    $("#p_from").change();
    $("#p_to").change();
} }); });
</script>
<script>
    $(function() { $("#filter_543_slider").slider({ range:true, step:1000, min:0, max:17600.000, values:[0,17600.000], slide:function(event, ui) {
                    $("#f543_from").val((ui.values[0] != 0)?ui.values[0]:"");
                    $("#f543_to").val((ui.values[1] != 17600.000)?ui.values[1]:"");
                    $("#f543_from").change();
                    $("#f543_to").change();
                } }); });
</script>

我需要获取#p_slider 和#filter_543_slider 的最小值和最大值

现在我尝试使用此代码:

String min = bodyHTML.split("[$(\"#"+searchingIdent+"\").slider({]")[1].split("[min:]")[1].split(",")[0];
String max = bodyHTML.split("[$(\"#"+searchingIdent+"\").slider({]")[1].split("[max:]")[1].split(",")[0];

但我发现错误:err:length=1; 索引=1

而且这种分裂时间太长了.. +5-10秒

请告诉我如何正确快速地获得所需的子字符串。

对不起我的英语不好。

4

1 回答 1

1

我建议使用正则表达式。我在这里为你写了这个:

\$\("#([a-z0-9_]+)"\)\.slider\([^\)]+min:([0-9\.]+)[^\)]+max:([0-9\.]+)

这会检查一个 jquery 行,它需要一个 id(或更好的 # 符号),然后是一个滑块函数,其中参数 min 和 max 在里面。

也试试这个提琴手来检查我的结果。

第一个结果是 id,第二个是最小值,第三个是最大值。

于 2013-04-21T16:10:40.373 回答