mysql字符串中去除所有数字_如何从MySQL中的字符串中删除所有非字母数字字符?...

非字母数字字符如下-@,!,#,&,(),?, /

没有内置函数可从MySQL中的字符串中删除非字母数字字符。因此,我们创建了一个删除所有非字母数字字符的函数。函数的声明和定义如下。mysql> delimiter //

mysql> CREATE FUNCTION RemoveNonAlphaNumeric( s CHAR(255) ) RETURNS CHAR(255) DETERMINISTIC

-> BEGIN

->   DECLARE var1, length SMALLINT DEFAULT 1;

->   DECLARE result CHAR(255) DEFAULT '';

->   DECLARE ch CHAR(1);

->   SET length  = CHAR_LENGTH( s );

->   REPEAT

->     BEGIN

->       SET ch = MID( s, var1, 1 );

->       IF ch REGEXP '[[:alnum:]]' THEN

->         SET result =CONCAT(result ,ch);

->       END IF;

->       SET var1 = var1 + 1;

->     END;

->   UNTIL var1 >length  END REPEAT;

->   RETURN result ;

-> END //

名为“ RemoveNonAlphaNumeric”的函数从字符串中删除所有非字母数字字符。为了进行检查,我们现在将调用用户定义的函数。mysql>delimiter ;

mysql>  select 'My Email id is test@123!',RemoveNonAlphaNumeric('My Email id is test@123!');

以下是使用功能“ RemoveNonAlphaNumeric”成功显示字母数字字符删除的输出。+--------------------------+---------------------------------------------------+

| My Email id is test@123! | removeNonAlphaNumeric('My Email id is test@123!') |

+--------------------------+---------------------------------------------------+

| My Email id is test@123! | MyEmailidistest123                                |

+--------------------------+---------------------------------------------------+

1 row in set (0.15 sec)

在此字符串(MyEmailidistest123)中,没有@和!现在显示符号,表示该功能正常运行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值