我正在开发一个HTML解析器。具体来说,我正在研究一个模块,该模块从返回的HTML中解析PHP错误。这是一个例子:
PHP Fatal error: Undefined class constant 'MYSQL_ATTR_USE_BUFFERED_QUERY' in /local/www/example.com/includes/database/mysql/database.inc on line 43
要解析它,我想搜索"fatal error" AND "on line"
。可以使用preg_match
正则表达式完成吗?如果是这样,怎么样?
答案 0 :(得分:0)
不是那么难,看看txt2re.com实际上写一个正则表达式而不知道它的任何内容!
这是你的首发
/Fatal error: (.*?) on line (\d+)/
答案 1 :(得分:0)
无需使用REGEX解析此问题;已经可以将错误传递为$variables
。您可以使用set_error_handler()在PHP中指定自己的错误处理程序。
您还可以使用trigger_error():
<?php
if ($divisor == 0) {
trigger_error("Cannot divide by zero", E_USER_ERROR);
}
?>
答案 2 :(得分:0)
/.*(Fatal error).+(on line).*/
将捕获字符串“致命错误”和“在线”。