如何通过MySQL中的正则表达式从任何字符串(位于相同字符串开始位置的“ A”除外)中删除所有“ A” ?
例如,我有一列“ MemberName”,其中包含字符串“ ANSHUMAN”和更多类似的名称。我想知道如何从字符串“ ANSHUMAN”中删除位于起始位置的“ A”以外的所有“ A”。
答案 0 :(得分:1)
您可以使用REGEXP_REPLACE
使用以下解决方案:
SELECT REGEXP_REPLACE(column_name, '[A]+', '', 2)
FROM table_name
REGEXP_REPLACE
的第四个参数定义了搜索的起始位置。
另一个不使用正则表达式的解决方案(以防MySQL版本不支持):
SELECT CONCAT(LEFT(column_name, 1), REPLACE(SUBSTR(column_name, 2), 'A', ''))
FROM table_name