标签: php regex
我有一个看起来像这样的字符串
aa bcdef123efg hh aa lklmasd456 hh (空格和粗体用于说明)
如果我有456,我想找到456的位置,并抓住 aa 和 hh 之间的所有内容。
456
这是迄今为止我能够提出的正则表达式(?=aa)(.*)456(.*)(?=hh)
(?=aa)(.*)456(.*)(?=hh)
但是,这并不会在遇到它的第一次出现时停止(从456比赛向后)
我想要实现的目标是什么?
答案 0 :(得分:1)
您可以使用此基于外观的正则表达式:
aa((?:(?!hh).)*?456(?:(?!hh).)*?)hh