全角转半角函数(APP)

环境

系统平台:银河麒麟(飞腾)U系 V4
版本:4.5

文档用途

将全角字符数字等转换为半角。

详细信息

---全角转半角函数如下

CREATE OR REPLACE FUNCTION convertstring(text)

 RETURNS text AS

$$

 DECLARE len INTEGER;

 DECLARE retval text;

 DECLARE tmp text;

 DECLARE asciival INT4;



 BEGIN

   --字符串字符个数

   SELECT textlen($1) INTO len;



   SELECT '' INTO retval;



   --循环

   FOR i IN 1..len LOOP

     --取单个字符

     SELECT substring($1, i, 1) INTO tmp;

     SELECT ascii(tmp) INTO asciival;



       BEGIN

         --全角转半角

         IF (asciival = 12288) THEN  --空格

           asciival = 32;

         END IF;

         IF (asciival > 65280) AND (asciival < 65375) THEN

           SELECT asciival-65248 INTO asciival;

         END IF;

       END;



     SELECT chr(asciival) INTO tmp;



     SELECT textcat(retval, tmp) INTO retval;

   END LOOP;



   RETURN retval;

 END;

 $$

   LANGUAGE 'plpgsql'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值