正则表达式获取两个字符之间的字符串

时间:2016-03-27 16:46:39

标签: php regex

我希望[]之间的所有内容都像:

[hello] hi

应该给:

hello

我尝试了\[(.*)\]但是当我使用时:

[hello] hi [yo]

它给出了:

hello] hi [yo

我怎样才能使它只返回第一个,然后是第二个,如helloyo

1 个答案:

答案 0 :(得分:1)

\[(.*)\]贪婪,意味着*匹配,直到最后一次出现。使用?,它将在第一个停止。

\[(.*?)\]

演示:https://regex101.com/r/cM6aD7/1
PreDemo:https://regex101.com/r/cM6aD7/2