我正在尝试从PHPUnit输出文件路径和带有条件的错误行。
这是我的输出和非工作(显然:)模式:
/path/includes/exception.php:7
/path/things-i-care-about/es/somefile.php:132
/path/things-i-care-about/es/somefile.php:121
/path/things-i-care-about/es/somefile.php:54
/path/things-i-care-about/es/somefile.php:60
/path/things-i-care-about/es/somefile.php:41
/path/things-i-care-about/es/somefile.php:47
/path/things-i-care-about/testfile.php:26
Pattern: /((?!exception).*.php):(\d.*)/gs
我尝试的是否定任何包含“异常”的行,但我的正则表达式并没有完全奏效。
我做错了什么?
答案 0 :(得分:2)
你可以尝试这种模式:
^(?:[^e\n]+|\Be|\be(?!xception\b))+\.php:\d+$
或此模式,如果您不需要检查特定的行格式:
^(?>[^e\n]++|\Be|\be(?!xception\b))+$
注意:如果需要在一个块中选择所有连续行,则只需从字符类中删除\n
。