2011-10-08 255 views
0

對不起,「讓我谷歌爲你」 - 問題,但我無法找到答案。PHP-MySQLi替換爲正則表達式/正則表達式/正則表達式

我想從我的數據庫中的列中刪除specfic元素。所以我搜索下面的代碼爲他們:(它工作正常)

$sql = "SELECT list_id, list_domains 
      FROM list 
      WHERE list_domains REGEXP '[\s]*[a-z-]*\.[a-z/\.\?=]*.#".$number."#'"; 
     $result = $db->prepare($sql); 
     $result->execute(); 
     $result->bind_result($list_id, $list_domains); 
     $result->store_result(); 

現在我想要刪除/替換這些列中找到的元素。所以我使用下面的代碼:

$sql = "UPDATE list 
     SET list_domains = REPLACE(list_domains, '[\s]*[a-z-]*\.[a-z/\.\?=]*.#".$number."#', '') 
     WHERE list_domains REGEXP '[\s]*[a-z-]*\.[a-z/\.\?=]*.#".$number."#'"; 
     $result = $db->prepare($sql); 
     $result->execute(); 
     $result->store_result(); 

不起作用。我也試過

REPLACE(list_domains, REGEXP '[\s]*[a-z-]*\.[a-z/\.\?=]*.#".$number."#', '') 

REGEXP_REPLACE(list_domains, '[\s]*[a-z-]*\.[a-z/\.\?=]*.#".$number."#', '') 

但這些線路只產生錯誤。

它是如何使用MySQLi刪除/替換規範正則表達式的?

感謝您的每一個建議!

回答