在行尾匹配整数

时间:2014-09-14 11:55:56

标签: php regex

我正在寻找一种方法来检查某条线是否具有以下形式:

[random text A-Za-z0-9 etc.] [integer] [integer]

所以基本上我想检查一行是否以两个整数结尾并且之前有一些文本。我还想匹配那两个整数和随机文本部分,因为我需要单独处理/存储它们。

我更喜欢基于正则表达式的建议。


2 个答案:

答案 0 :(得分:1)

您可以使用此正则表达式:

^(.*)(\d)(\d)$

PHP代码:

if (preg_match('/^(.*)(\d)(\d)$/', $str, $m)) {
    print_r($m);
}

答案 1 :(得分:1)

根据anubhava的回答,我形成了一个有效的正则表达式:

'/^(.+)\s(\d+)\s(\d+)$/'

测试:

test line: Informatica 22 100
array(4) {
  [0]=>
  string(18) "Informatica 22 100"
  [1]=>
  string(11) "Informatica"
  [2]=>
  string(2) "22"
  [3]=>
  string(3) "100"
}