Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP中不带';没有引号(需要修改代码)_Php_Regex_Hyperlink_Preg Replace_Autolink - Fatal编程技术网

PHP中不带';没有引号(需要修改代码)

PHP中不带';没有引号(需要修改代码),php,regex,hyperlink,preg-replace,autolink,Php,Regex,Hyperlink,Preg Replace,Autolink,好的,我一直在使用下面的代码来查找我输入的文本中的任何URL,但是有些东西,比如YouTube代码或其他什么东西,里面没有链接,它也会找到这些链接。我想修改这段代码,这样它就可以忽略已经是某个部分的链接周围的引号 `公共功能自动链接文本($text){ $pattern='#\b(([\w-]+:/?| www[.])[^\s()]+(?:\([\w\d]+\)|([^[:punch:][\s]|/))#; 返回preg_replace_回调($pattern,array($this,'auto

好的,我一直在使用下面的代码来查找我输入的文本中的任何URL,但是有些东西,比如YouTube代码或其他什么东西,里面没有链接,它也会找到这些链接。我想修改这段代码,这样它就可以忽略已经是某个部分的链接周围的引号

`公共功能自动链接文本($text){

$pattern='#\b(([\w-]+:/?| www[.])[^\s()]+(?:\([\w\d]+\)|([^[:punch:][\s]|/))#;
返回preg_replace_回调($pattern,array($this,'auto_link_text_callback'),$text);
}`

这只排除前面带有引号的链接

/(?<=[^"]|^)(https?|ftp|file):\/\/[-a-zA-Z0-9+&@#\/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#\/%=~_|]/

/(?太棒了!它工作得很好!我删除了其中的| ftp |文件部分以保证安全。谢谢。)
/(?<=[^"]|^)(https?|ftp|file):\/\/[-a-zA-Z0-9+&@#\/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#\/%=~_|]/