数字和单词匹配的简单正则表达式

时间:2013-08-30 00:42:49

标签: php regex

我正在尝试使用正则表达式匹配以下模式:

Something-23432

我使用以下代码使用正则表达式

来查找它
preg_match('/^Something\-/[0-9/]+/', $msg, $matches);

它不起作用:/。任何帮助,将不胜感激!

整篇文档中只会出现一次上述PATTERN。

修改

<?php

preg_match('/^Something\-[0-9]+$/', "I am looking for Something-2343. I am not sure if this script can find it.", $matches);

print_r($matches);

?>

此代码只生成

Array ( )

2 个答案:

答案 0 :(得分:3)

将您的行更改为:preg_match('/^Something\-[0-9]+$/', $msg, $matches);

<?php
    $msg="Something-23432";

    if( preg_match('/^Something\-[0-9]+$/', $msg, $matches)) {
           echo 'found';
            }
    else {
              echo "Not found";
            }

    print_r($matches);

?>

输出:

found Array ( [0] => Something-23432 )

答案 1 :(得分:1)

preg_match('/Something\-[0-9]+/', $msg, $matches);

如果您特别想要五个角色,

preg_match('/Something\-[0-9]{5}/', $msg, $matches);