PHP:获取多个字符串

时间:2011-03-07 20:19:01

标签: php string special-characters

我有以下字符串:

$string = '"http://i.stack.imgur.com/?oapQok.png" blabla "http://i.stack.imgur.com/p9*xp.png" blabla "http://i.stack.imgur.com/papsyewxp.jpg"'

我现在想要得到以下内容:

array(3) {
  [0] => string("?oapQok.png")
  [1] => string("p9*xp.png")
  [2] => string("papsyewxp.jpg")
}

问题:长度变化,有'奇怪' - > * $?其中的字符等...

你能解释一下如何解决它吗?

2 个答案:

答案 0 :(得分:3)

试试following regular expression

"http:\/\/i.imgur.com\/([^"]+)"

另请参阅preg_match_all上的php文档以获取捕获。

答案 1 :(得分:1)

$string = '"http://i.stack.imgur.com/?oapQok.png" blabla "http://i.stack.imgur.com/p9*xp.png" blabla "http://i.stack.imgur.com/papsyewxp.jpg"';

$matches = array();
preg_match_all('/"http:\/\/i.imgur.com\/([^"]+)"/', $string, $matches);

var_dump($matches[1]);