使用preg_match PHP从字符串中查找失败的行

时间:2012-12-02 03:01:55

标签: php regex

我需要使用PHP中的preg_match来执行下一步:

我确实有这样的字符串:

TEST1:OK
测试2:OK
TEST3:zhcon失败
TEST4:进展
TEST5:确定

所以我需要找到不行的行。
TEST3:zhcon失败
TEST4:PROGRESS

所以我想我必须检查 \ r \ n(\ n)之间的字符串,如果!= OK,我该怎么做才能使用preg_match?

非常感谢!

2 个答案:

答案 0 :(得分:1)

为什么要使用正则表达式?字符串函数应该没问题;正则表达式更属于最后的手段。

$lines = explode("\n", str_replace("\r\n", "\n", $lines));
$failed = array();

foreach ($lines as $line) {
    if (strpos($line, 'OK') === false) {
        $failed[] = $line;
    }
}

答案 1 :(得分:1)

preg_match_all('/test\d+:(?!OK)/', $allrows, $rowsNotOk)