我有一个字符串:
for (;;); {
"__ar": 1,
"payload": null,
"jsmods": {
"require": [
["ServerRedirect", "redirectPageTo", [],
["https:\/\/bigzipfiles.facebook.com\/p\/dl\/download\/file.php?r=100028316830939&t=100028316830939&j=11&i=5823694&ext=12121516&hash=AaBVNURld6wrKBcU", true, false]
]
],
"define": [
["KSConfig", []
}
我尝试将正则表达式改成:
https://bigzipfiles.facebook.com/p/dl/download/file.php?r=100028316830939&t=100028316830939&j=11&i=5823694&ext=12121516&hash=AaBVNURld6wrKBcU
我用过
var results = $(document).find("pre").html();
var regex1 = new RegExp(/["\w\.\/\;\?\=\-\&\\\\"]/);
var resultsReplace = regex1.exec(results);
console.log(resultsReplace);
但它不起作用。
请问有人可以帮我吗?
答案 0 :(得分:0)
假设它始终是URL,而分隔符始终是"
,我们可以在这里使用更简单的正则表达式,例如:
str.match(/http[^"]+/)[0]
所以我们要寻找一个以http
开头的字符串,该字符串后面要加上"
以外的任何其他字符,因为匹配字符串永远不会得到一个,因为这是一个分隔符。
LMK如果情况更广(不是URL,可能不是以http开头,等等),我将调整正则表达式。