是否可以在php中嵌套正则表达式

时间:2013-05-09 09:46:40

标签: php regex nested

所以我有这个字符串:

http://www.whatever.com/whatever-c89-ca9840-cu3849

是否可以使用唯一的正则表达式(preg_match)来:

  1. 隔离-ca9840
  2. 提取号码9840
  3. 这就是我现在正在做的事情:

    preg_match('/ - cu [\ d] + - /',$ uri,$ mathes)

2 个答案:

答案 0 :(得分:1)

没有。就这么简单。正则表达式除了它所处的状态之外没有记忆。

答案 1 :(得分:1)

<?php

$url = 'http://www.whatever.com/whatever-c89-ca9840-cu3849';
if( preg_match('@-ca(\d+)@', $url, $matches) ){
    var_dump($matches);
}
array(2) {
  [0]=>
  string(7) "-ca9840"
  [1]=>
  string(4) "9840"
}