2012-07-09 78 views
1
 $regex = '/\b'.$keyword.'\b/i'; // case insensitive match 
     if (preg_match($regex, $linkedin_html) == 0) 
     { 
      $this->_htmlValidationFailed++; 
      continue;     
     } 

表达当我使用此代码..我得到错误未知的修饰词“V” ..未知的修饰词“V”使用的preg_match()时,在正则表达式

请让我知道什么是问题,帮助我纠正。

+1

什么是'$关键字'?可能它有一个'/ v',你需要'逃脱'它。 – 2012-07-09 11:41:28

+0

它是从互联网上获取的一些表达。 – 2012-07-09 11:42:20

+4

尝试一下:'$ regex ='/ \ b'。 preg_quote($关键字)。 '\ b/i';' – 2012-07-09 11:43:33

回答

3
<?php 
$keyword = preg_quote($keyword, '/'); 

$regex = '/\b'.$keyword.'\b/i'; // case insensitive match 
if (preg_match($regex, $linkedin_html) == 0) 
{ 
    $this->_htmlValidationFailed++; 
    continue;     
} 
+0

谢谢berry ..但现在它说..警告:preg_match():编译失败:在偏移量#######处正则表达式太大。 – 2012-07-09 11:55:28

+0

@NarenKarthik嗯,我猜这意味着你的正则表达式太大了;)如果你只是测试关键字,也许一个循环与strstr比正则表达式更适合? – 2012-07-09 13:06:33

相关问题