我有一个像这样的字符串:
$string = 'hay qua nhi @[3818||Vinh HandSome] và @[101623||Vũ Hoài Anh] ';
我想把它转换成一个数组:
$array = array([0]=>'@[3818||Vinh HandSome]',[1]=>'@[101623||Vũ Hoài Anh]');
并且还想将原始字符串替换为:
$string = 'hay qua nhi <a href='users/3818'>Vinh HandSome</a> và <a href='users/101623'>Vũ Hoài Anh</a>';
所以我尝试使用正则表达式:
echo preg_replace("/@\[([0-9]+)\|\|(.*)\]/","<a href='/users/$1'>$2</a>",$string);
preg_match_all("/@\[([0-9]+)\|\|(.*)\]/", $string, $result, PREG_PATTERN_ORDER);
print_r($result[0]);
但这似乎不起作用。有没有人知道这种情况下正确的正则表达式?