PHP 正则表达式:如何从特定字符串中提取 url 并过滤“\”

PHP regex: How to extract url and filter "\" from specific string

我是编程新手;现在,我在 PHP 编程方面遇到了一些问题。

我想从下面的string中提取URL:

"success":true,"load":"http:\/\/8.88.88.8\/list\/si3diwoe\/123","Live":true

想要的string

http://8.88.88.8/list/si3diwoe/123

谁能告诉我这在代码中是如何工作的? 非常感谢!

如果是json字符串,可以用json_decode赋值给一个变量,比如说$arr,然后stripslashes($arr['load']);

如果不是,你可以使用 explode("," , $string),并将其赋值给一个变量,再说一次 $arr。 运行 再次爆炸 (explode(":", $arr[1])) 并将其分配给另一个变量,例如 $ar,然后在 $ar['1'];

上执行 stripslashes
$string = '"success":true,"load":"http:\/\/8.88.88.8\/list\/si3diwoe\/123","Live":true';

// The JSON way
$array = json_decode('{' . $string . '}'); // Wrap in {} to make object
$url   = $array->load;
echo "Using JSON : $url", PHP_EOL;

// The RegEx way
preg_match('/load":"(.*?)"/', $string, $matches);
$url = stripslashes($matches[1]);
echo "Using RegEx: $url", PHP_EOL;

输出:

Using JSON : http://8.88.88.8/list/si3diwoe/123
Using RegEx: http://8.88.88.8/list/si3diwoe/123