Php 预匹配所有反斜杠[\]&;[u002F]
我有一个网址:Php 预匹配所有反斜杠[\]&;[u002F],php,regex,Php,Regex,我有一个网址: https:\u002F\u002Fsite.vid.com\u002F93836af7-f465-4d2c-9feb-9d8128827d85\u002F6njx6dp3gi.m3u8?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjb3VudHJ5IjoiSU4iLCJkZXZpY2VfaWQiOiI1NjYxZTY3Zi0yYWE3LTQ1MjUtOGYwYy01ODkwNGQyMjc3ZmYiLCJleHAiOjE2MTA3M
https:\u002F\u002Fsite.vid.com\u002F93836af7-f465-4d2c-9feb-9d8128827d85\u002F6njx6dp3gi.m3u8?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjb3VudHJ5IjoiSU4iLCJkZXZpY2VfaWQiOiI1NjYxZTY3Zi0yYWE3LTQ1MjUtOGYwYy01ODkwNGQyMjc3ZmYiLCJleHAiOjE2MTA3MjgzNjEsInBsYXRmb3JtIjoiV0VCIiwidXNlcl9pZCI6MH0.c3Xhi58DnxBhy-_I5yC2XMGSWU3UUkz5YgeVL1buHYc","
我想用preg_match_all匹配它。我的正则表达式是:
preg_match_all('/(https:\/\/site\.vid\.com\/.*\",")/', $input_lines, $output_array);
但我无法匹配上述代码中的特殊字符\
&u002F
。我试着使用(逃跑功能)。但它并不匹配。我知道这可能是一个蹩脚的问题,但如果有人能帮助我匹配\
和u002F
或在preg\u match\u all中转义\
和u002F
,那将是非常有帮助的
问题编辑:
我只想使用preg\u match\u all
,因为我试图从html页面中提取上述URL。您可以使用
preg\u match\u all('~https:(?://)(?:\\\\u002F){2})site\.vid\.com(?:/“\\\\\u002F)[^”]*~,$string)
详情如下:
-文本字符串(如果https:
是可选的,请使用s
)https?:
-与(?://|)(?:\\u002F){2}
//code>或(
)两次出现的
匹配的非捕获组\u002F
-一个文本site\.vid\.com
字符串(点是一个元字符,它匹配除换行符以外的任何字符,因此必须转义)site.vid.com
-与(?:/| \\u002F)
或/
文本匹配的非捕获组\u002F
-与零个或多个字符(而非[^”]*
)匹配的求反字符类“
$re='~https:(?://)(?:\\\\u002F){2})site\.vid\.com(?:/\\\\\u002F)[^“]*~;
10.2.2-42C2-2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 2 2 2 2 2 6 6 6 6 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 Z5YGEVL1BUHYC“,”;
预匹配全部($re,$str,$matches,预设置顺序,0);
打印($matches[0]);
//=>数组([0]1.2.2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 8 8 8 8 8 8 8 8 8 8 7 7 7 8 8 8 8 8 8 8 8 8 10 10 10 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 EVL1BUHYC)
Trypreg\u match\u all('~https:(?:/)(?:\\\\u002F){2})site\.vid\.com(?:/\\\\\\u002F)[^“]*~,$string)
,请看和。@WiktorStribiż谢谢兄弟!它工作得很好。你能给我解释一下这个表达式吗?我是新手!希望不要问太多,我在答案中添加了解释。Tysm先生!得到你的答案!(457304代表)非常感谢