從資料庫記錄中刪除HTML 標籤
在資料庫管理領域,從文字欄位中提取資訊可能具有挑戰性,尤其是在使用HTML 標籤時會使內容混亂。此查詢突出顯示了一個場景,其中表格行包含 HTML 標記,任務是根據特定關鍵字檢索記錄,不包括關鍵字周圍帶有標籤的記錄。
提供的查詢 SELECT * from table WHERE colmn_name LIKE ' %mytext%',正確辨識包含關鍵字「mytext」的行。但是,它的缺點在於包含「mytext」是 HTML 標記一部分的行,例如 。
要修正此問題,一種更精細的方法是必需的。此解決方案涉及利用自訂 MySQL 函數 fnStripTags。
fnStripTags 函數的工作原理是迭代地識別輸入字串中的 HTML 標籤並刪除它們,同時保留其餘內容。 Locate 函數用於尋找標籤的起始和結束位置,Insert 函數以空字串取代標記部分。
使用 fnStripTags 函數,查詢可以修改為:
SELECT * from table WHERE fnStripTags(colmn_name) LIKE '%mytext%'
此查詢有效地消除了內容中的 HTML 標籤,從而實現基於關鍵字的準確搜尋。 fnStripTags 函數確保關鍵字只在實際文字中找到,而不是在 HTML 標籤內。
透過使用此自訂函數,即使 HTML 標籤存在,也可以精確提取符合所需條件的記錄。存在於文字資料中。
以上是如何在忽略 HTML 標籤的情況下搜尋資料庫記錄中的關鍵字?的詳細內容。更多資訊請關注PHP中文網其他相關文章!