在 HTML
页面,我想选择 javascript
的值多变的。下面是 HTML 页面的片段。
<script type="text/javascript">
$(function() {
$.ajaxSetup({
beforeSend: function(xhr) {
xhr.setRequestHeader('X-MOON-EXPIRED', "1445350653");
xhr.setRequestHeader('X-MOON-TOKEN', "10dafe974cc156d2d3b7fd9bb1e4e3ed");
}
});
});
</script>
我的目标是读取变量 X-MOON-EXPIRED
的值和X-MOON-TOKEN
从本页使用 Java
。谢谢。
最佳答案
import java.util.regex.*;
Pattern p1 = Pattern.compile("X-MOON-EXPIRED', \"([^\"]*)\"");
Pattern p2 = Pattern.compile("X-MOON-TOKEN', \"([^\"]*)\"");
String html = "<script type=\"text/javascript\"> $(function() { $.ajaxSetup({ beforeSend: function(xhr) { xhr.setRequestHeader('X-MOON-EXPIRED', \"1445350653\"); xhr.setRequestHeader('X-MOON-TOKEN', \"10dafe974cc156d2d3b7fd9bb1e4e3ed\"); } }); }); </script>";
Matcher m1 = p1.matcher(html);
Matcher m2 = p2.matcher(html);
if (!m1.find() || !m2.find()) {
throw new Exception("Didn't match");
}
System.out.println(String.format("X-MOON-EXPIRED=%s, X-MOON-TOKEN=%s", m1.group(1), m2.group(1)));
打印:
X-MOON-EXPIRED=1445350653 X-MOON-TOKEN=10dafe974cc156d2d3b7fd9bb1e4e3ed
关于javascript - 用 Java 解析 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33239311/