我有一系列.txt文件,我正在for循环中读取。我在[widget _]
形式的一些文本文件中放置了一个令牌因此,文本文件的全部内容可能是[widget_search]。另一个文本文件可能包含内容[widget_recent-posts]。其他人可能只有html格式的文本而根本没有令牌。
在for循环中,我正在做一个preg_match来查看文本文件是否与内容匹配我的标记模式。如果匹配,我正在执行一些条件代码。
但是,当我运行跟踪测试以查看是否匹配时,我收到错误。
错误是:
警告:preg_match()[function.preg-match]:编译失败:缺少终止]对于C:\ xampplite \ htdocs \ test \ wp-content \ plugins \ widget-test \ widget-中偏移量为8的字符类第227行的test.php
这是第227行的代码:
if (preg_match("/[widget_/i",$widget_text)) {//do something}
答案 0 :(得分:13)
你应该像这样逃避[
字符:
if (preg_match("/\[widget_/i",$widget_text)) { // do something }
答案 1 :(得分:0)
使用preg_quote
更加清晰:
if (preg_match(preg_quote("/[widget_/i"),$widget_text)) {//do something}