我在一个for循环中读取了一系列.txt文件。我在一些文本文件中以widget_的形式放置了一个标记
因此,例如,文本文件的全部内容可能是widget_search。而另一个文本文件可能包含widget_recent-posts内容。其他人可能只有html格式的文本,而根本没有令牌。
在for循环中,我执行了一个preg_match,以查看文本文件中的内容是否与我的令牌模式匹配。如果匹配,我将执行一些条件代码。
但是,当我运行跟踪测试来查看是否存在匹配时,我得到了一个错误。
错误是:
警告: preg_match()函数.preg-match:编译失败:在第227行的C:\xampplite\htdocs\test\wp-content\plugins\widget-test\widget-test.php中,字符类的偏移量为8处缺少终止]
下面是第227行的代码:
if (preg_match("/[widget_/i",$widget_text)) {//do something}发布于 2011-03-25 22:01:36
您应该像这样转义[字符:
if (preg_match("/\[widget_/i",$widget_text)) { // do something }发布于 2016-05-30 23:16:46
像这样使用preg_quote要干净得多:
if (preg_match(preg_quote("/[widget_/i"),$widget_text)) {//do something}https://stackoverflow.com/questions/5433446
复制相似问题