$str = (( test: 'object1', test2: 'object2', test3: 'object3' ))
在上面的字符串中,我想提取单词object1
。
所以,我写了下面的代码,但它没有用。
<?php
echo preg_replace("/^(.+)test:(.+)'(.+)'(.+)$/", "$3", $str);
?>
它打印了&#34; object3&#34;
如何解决此问题?
答案 0 :(得分:1)
你可以简单地使用这个正则表达式:
.*?test:\s*'(.+?)'.*
你的例子:
$str = "(( test: 'object1', test2: 'object2', test3: 'object3' ))";
echo preg_replace("/.*?test:\s*'(.+?)'.*/", "$1", $str); //: object1