Php [title](http://)链接的正则表达式

Php [title](http://)链接的正则表达式,php,regex,hyperlink,Php,Regex,Hyperlink,我正在尝试使用php解析链接,其结构类似于[google](http://google.com),到目前为止,我已经做到了: "/\[(.+?)\]((.+?\))/is" 我唯一不能开始工作的部分是带括号的部分' 任何帮助都会很好 [编辑] @jari-这是代码的一部分: $find = array( "@\n@", "/[**](.+?)[**]/is", "/\[(.+?)\]\((.+?)\)/is" ); $replace = array(

我正在尝试使用php解析链接,其结构类似于
[google](http://google.com)
,到目前为止,我已经做到了:

"/\[(.+?)\]((.+?\))/is" 
我唯一不能开始工作的部分是带括号的部分'

任何帮助都会很好

[编辑]

@jari-这是代码的一部分:

$find = array(
    "@\n@", 
    "/[**](.+?)[**]/is",
    "/\[(.+?)\]\((.+?)\)/is"
    );

$replace = array(
    "<br />",
    "<strong>$1</strong>",
    "<a href\"$1\" target=\"_blank\" rel=\"no follow\"></a>"
    );

$body = htmlspecialchars($body); 
$body = preg_replace($find, $replace, $body); 
return $body; 
$find=array(
“@\n@”,
“/[**](.+?)[**]/is”,
“/\[(.+?)\]\(.+?)\)/is”
);
$replace=数组(
“
”, “$1”, "" ); $body=htmlspecialchars($body); $body=preg_replace($find,$replace,$body); 返回$body;
括号是一个特殊字符,通常在表达式中标记子模式,因此需要对其进行转义(顺便说一句,就像使用方括号一样):


它应该看起来像:

\[([^\]]+)]\([^)]+\)
我们正在使用
[^x]
,这意味着,匹配任何不是
x
的内容
我们用它在第一组中捕获了
[
之后的所有内容,它不是
]

使用
[^]+
的第二组也一样。任何非

指定一个问题:您输入了什么,希望得到什么?您的开头
)缺少一个反斜杠。但是将转义移到外部对,而不是内部对…
\(.+?)\
这是一个更严格的正则表达式:
\[([^\]]+)]\([^)]+\)