mysql数据库中有一个表,它具有字符串,数据类型是文本,插入的数据如下
HELLO + THIS + IS + OFFER !!%+ HURRY !!%0ACall + US + NOW%
如何从此字符串中删除%和+特殊字符,它看起来像编码字符串。
最佳问候 CJ
答案 0 :(得分:0)
下面的mysql函数从字符串中删除特殊字符:
DROP FUNCTION IF EXISTS replacespecialchars;
DELIMITER |
CREATE FUNCTION replacespecialchars( str CHAR(255) ) RETURNS CHAR(255) DETERMINISTIC
BEGIN
DECLARE i, len SMALLINT DEFAULT 1;
DECLARE ret CHAR(255) DEFAULT '';
DECLARE c CHAR(1);
SET len = CHAR_LENGTH( str );
REPEAT
BEGIN
SET c = MID( str, i, 1 );
IF c REGEXP '[[:alnum:]]' THEN
SET ret=CONCAT(ret,c);
END IF;
SET i = i + 1;
END;
UNTIL i > len END REPEAT;
RETURN ret;
END |
DELIMITER ;