在 MySQL 中執行正規表示式取代
想要用正規表示式修改 MySQL 資料庫中的資料?本問題探討了 MySQL 中此類功能的可用性,並為使用 MariaDB 或 MySQL 8.0 的使用者提供了解決方案。
正規表示式替換函數
在 MariaDB 或 MySQL 8.0 中, REGEXP_REPLACE() 函數提供在資料庫列中執行基於正規表示式的替換的能力。其語法如下:
REGEXP_REPLACE(col, regexp, replace)
其中:
使用函數
要使用REGEXP_REPLACE() 函數,只需🎜>
要使用REGEXP_REPLACE() 函數,只需將其包含在查詢中,如下所示:SELECT REGEXP_REPLACE('stackowerflow', 'ower', 'over');這將產生輸出:
stackoverflow
正規表示式中的分組
此函數支援正規表示式中的分組,允許更複雜的替換。例如,以下語句使用分組來交換兩個匹配單字的位置:SELECT REGEXP_REPLACE("stackoverflow", "(stack)(over)(flow)", '\2 - \1 - \3')這將返回:
over - stack - flow
替代方法
替代方法 替代方法 替代方法 對於未運行MariaDB 或MySQL 8.0 的用戶,可以採用涉及PHP 和MySQL 的替代方法。此方法涉及選擇數據,使用PHP進行正規表示式替換,然後更新資料庫。然而,它可能比使用專用的 REGEXP_REPLACE() 函數更麻煩且效能消耗更大。
以上是如何在 MySQL 中執行正規表示式替換?的詳細內容。更多資訊請關注PHP中文網其他相關文章!