如何匹配正则表达式中的“(”和“)”括号字符?

时间:2014-02-26 08:15:15

标签: php regex

我是正则表达式的新手。

我想验证一个这样的数字:123456789012345678(123)

我知道如何匹配前18位数字,但不知道如何允许下一个(及其中的数字)

我目前使用此功能不完整,请帮帮我

$string = "123456789012345678 (123)";
$pattern = '/^[0-9]{18}$/';
  if(!preg_match($pattern, $string)){
      echo 'valid';
  }

1 个答案:

答案 0 :(得分:5)

()是正则表达式元字符,因此需要进行转义:

$pattern = '/^[0-9]{18} \([0-9]+\)$/';