Php 如何将此正则表达式规则更改为不接受括号?
我使用以下正则表达式规则(PHP)在文本文档中查找图像链接:Php 如何将此正则表达式规则更改为不接受括号?,php,regex,Php,Regex,我使用以下正则表达式规则(PHP)在文本文档中查找图像链接: '/((f|ht)tp)(.*?)(.gif|.png|.jpg|.jpeg)/' 例如,它接受以下内容: http://www.example.com/image.jpg (http://www.example.com/image.jpg) 但是,我希望它不要接受以下内容: http://www.example.com/image.jpg (http://www.example.com/image.jpg) 或: 我如何才
'/((f|ht)tp)(.*?)(.gif|.png|.jpg|.jpeg)/'
例如,它接受以下内容:
http://www.example.com/image.jpg
(http://www.example.com/image.jpg)
但是,我希望它不要接受以下内容:
http://www.example.com/image.jpg
(http://www.example.com/image.jpg)
或:
我如何才能做到这一点?这是一项针对以下人员的工作:
”/(?这是以下人员的工作:
'/(?您的模式缺少^
和$
。请尝试此模式:
^((f|ht)tp)(.*?)(.gif|.png|.jpg|.jpeg)$
您的模式缺少^
和$
。请尝试此模式:
^((f|ht)tp)(.*?)(.gif|.png|.jpg|.jpeg)$
PHP警告:偏移量处的preg_replace_callback():编译失败:丢失)56@RichardRodriguez:我刚刚注意到,我已经纠正了打字错误。请再试一次。我更喜欢\[\\[\;\(
而不是[(\[]
)@Dukeling:为什么?字符类比交替类快(尽管PHP可能会将单字符替换优化为字符类)。我发现它更具可读性。我并没有说它会更好,只是我更喜欢它。速度差异也不需要担心。PHP警告:preg_replace_callback():编译失败:丢失)偏移量56@RichardRodriguez:我刚刚注意到,我已经纠正了输入错误。请再试一次。我更喜欢\[\124;\(
而不是[(\[]
@Dukeling:为什么?字符类比替换类快(尽管PHP可能会将单字符替换优化为字符类)。我觉得它更可读。我没有说它更好,只是说我更喜欢。而且速度差也不必担心。我正在寻找一个更大的字符串中的这些字符串。我正在寻找一个更大的字符串中的这些字符串。OP说它在一个更大的字符串中。OP说它在一个更大的字符串中