<?php
preg_match_all(
'#\[(link)(.*?)!?\](.*?)\[\/\\1\]#i',
'[link href="http://www.google.com" title="Google" target="_blank"]Google[/link]
[link href="http://www.facebook.com"]Facebook[/link]
[link href=\'http://www.twitter.com\' rel="nofollow"]Twitter[/link]',
$StrMatches
);
/* $StrMatches[0] = Full tag string
* $StrMatches[1] = Tag name
* $StrMatches[2] = tag params string
* $StrMatches[3] = Tag content
* */
print_r($StrMatches);
$ParamList = array();
foreach ($StrMatches[2] as $TagParamStr )
{
preg_match_all('#\s*([^=]+)=[\'|"]([^\'|"]*)[\'|"]#', $TagParamStr, $ParamMatches);
array_push($ParamList, $ParamMatches);
}
/* $ParamList[0] = Full param string
* $ParamList[1] = Param name
* $ParamList[2] = Param value
* */
print_r($ParamList);
- Output for 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.0 - 5.5.38, 5.6.0 - 5.6.40, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
- Array
(
[0] => Array
(
[0] => [link href="http://www.google.com" title="Google" target="_blank"]Google[/link]
[1] => [link href="http://www.facebook.com"]Facebook[/link]
[2] => [link href='http://www.twitter.com' rel="nofollow"]Twitter[/link]
)
[1] => Array
(
[0] => link
[1] => link
[2] => link
)
[2] => Array
(
[0] => href="http://www.google.com" title="Google" target="_blank"
[1] => href="http://www.facebook.com"
[2] => href='http://www.twitter.com' rel="nofollow"
)
[3] => Array
(
[0] => Google
[1] => Facebook
[2] => Twitter
)
)
Array
(
[0] => Array
(
[0] => Array
(
[0] => href="http://www.google.com"
[1] => title="Google"
[2] => target="_blank"
)
[1] => Array
(
[0] => href
[1] => title
[2] => target
)
[2] => Array
(
[0] => http://www.google.com
[1] => Google
[2] => _blank
)
)
[1] => Array
(
[0] => Array
(
[0] => href="http://www.facebook.com"
)
[1] => Array
(
[0] => href
)
[2] => Array
(
[0] => http://www.facebook.com
)
)
[2] => Array
(
[0] => Array
(
[0] => href='http://www.twitter.com'
[1] => rel="nofollow"
)
[1] => Array
(
[0] => href
[1] => rel
)
[2] => Array
(
[0] => http://www.twitter.com
[1] => nofollow
)
)
)
preferences:
278.06 ms | 412 KiB | 407 Q