如何使用正则表达式提取字符串?

时间:2011-08-03 18:54:43

标签: php regex

我可以在不使用子模式的情况下提取字符串aaa(但仍使用正则表达式)吗?

$str = 'abc#aaa#abc';
preg_match('/#(.*)#/', $str, $matches);
print_r($matches);

更新

  • lookahead和lookbehind是第二个解决方案,其他任何一个?

我只想弄清楚一些正则表达式替代品!

2 个答案:

答案 0 :(得分:4)

/(?<=#).*?(?=#)/

但是你为什么不想使用捕获组呢?

答案 1 :(得分:1)

预测/后视断言的替代方案:

echo preg_replace('/^.*?#|#.*?$/s', '', 'abc#aaa#abc');