mysql去除输入的字符串中的中文_Sql得到(去除)字符串中所有汉字,字母,数字的函数...
核心思想在于下面几个模式的组合使用:
%[0-9]% :
所有数字
%[A-Za-z]%:所有字母
%[吖-咗]%:所有汉字
1. 去除汉字(字母、数字):
举出一例,其他类似:CREATE FUNCTION f_RemoveChinese
(
@str VARCHAR(500)
)
RETURNS VARCHAR(500)
AS
BEGIN
-- '%[0-9]%' 所有數字
-- '%[A-Za-z]%' 所有字母
-- '%[A-Za-z0-9]%' 所有數字與字母
-- .... 組合使用,依此類推
WHILE PATINDEX('%[吖-咗]%',@str) > 0
SET @str = STUFF(@str,PATINDEX('%[吖-咗]%',@str),1,'')
RETURN @str
END
GO
SELECT dbo.f_RemoveChinese('愛@@情123騙子我問@@你') -- @@123@@
2. 提取汉字(字母、数字):
提取XX可转化为去除非XX 。
举出一例,其他类似CREATE FUNCTION f_getChinese
(
@str VARCHAR(500)
)
RETURNS VARCHAR(500)
AS
BEGIN
-- '%[^0-9]%' 所有數字
-- '%[^A-Za-z]%' 所有字母
-- '%[^A-Za-z0-9]%' 所有數字與字母
-- .... 組合使用,依此類推
WHILE PATINDEX('%[^吖-咗]%',@str) > 0
SET @str = STUFF(@str,PATINDEX('%[^吖-咗]%',@str),1,'')
RETURN @str
END
GO
SELECT dbo.f_getChinese('愛@@情123騙子我問@@你') -- 愛情騙子我問你
3. 提取数字(支持小数点):
上面的代码将模式直接换成'%[^0-9]%'的话,不支持带小数点的数字,下面给出一个修正的:
-- 提取所有漢字(字母、數字)
CREATE FUNCTION f_GetNum
(
@str VARCHAR(500)
)
RETURNS VARCHAR(500)
AS
BEGIN
-- get num and dot
WHILE (PATINDEX('%[^0-9.]%',@str) > 0)
SET @str = STUFF(@str,PATINDEX('%[^0-9.]%',@str),1,'')
-- remove left dot
WHILE(LEFT(@str,1)='.')
SET @str = RIGHT(@str,LEN(@str)-1)
-- remove right dot
WHILE(RIGHT(@str,1)='.')
SET @str = LEFT(@str,LEN(@str)-1)
RETURN @str
END
GO
SELECT dbo.f_GetNum('愛@@..情1.23騙子我問...@@你') -- 1.23
mysql去除输入的字符串中的中文_Sql得到(去除)字符串中所有汉字,字母,数字的函数...相关推荐
- linux非图形化界面,在Linux图形界面中显示中文,非图形界面中,显示英文
在Linux图形界面中显示中文,非图形界面中,显示英文 设置语言,应当改环境变量LANG 1. 在非Xwindow下显示英文.非Xwindow下不能显示中文汉字,如果设置成中文,则中文部分显示乱码,第 ...
- mysql得到中文的拼音_在MySQL中获取中文的拼音或转换中文替拼音
在MySQL中获取中文的拼音或转换中文为拼音 MySQL ------------------------------------- 分页:select * from xxx limit 0,10 ? ...
- sql删除表中重复记录_SQL从SQL表中删除重复行的不同方法
sql删除表中重复记录 This article explains the process of performing SQL delete activity for duplicate rows f ...
- qt接收服务器信息中文乱码,在qt提取lineedit中的中文字符串,通过tcp通信时,服务器接收乱码的情况,解决办法...
使用的是qt5.9版本,在取lineedit中的中文字符转成字符串,后转成char*的过程中,在仅仅使用string str.tolocal8bit,是不起作用的,转换不了格式,输出的char*数组还 ...
- 正则表达式 - 去掉乱码字符/提取字符串中的中文字符/提取字符串中的大小写字母 - Python代码
目录 1.乱码符号种类较少,用replace() 2.乱码字符种类较多,用re.sub() 3.提取字符串中的中文字符 4.提取字符串中的中文字符和数字 5.提取其他 数据清洗的时候一大烦恼就是数据中 ...
- python 去除字符串内的中文字符
主要用re.sub,直接间代码: import recls='1苹果' print(cls) cls_idx = re.sub('[\u4e00-\u9fa5]', '', cls) # 去除字符串之 ...
- Java通过正则剔除乱码_正则表达式 - 去掉乱码字符/提取字符串中的中文字符/提取字符串中的大小写字母 - Python代码...
目录 1.乱码符号种类较少,用replace() 2.乱码字符种类较多,用re.sub() 3.提取字符串中的中文字符 4.提取字符串中的中文字符和数字 5.提取其他 数据清洗的时候一大烦恼就是数据中 ...
- wine中解决中文字体问题
Wine的中文显示与字体设置 此页由Henry Hu于2013年12月10日 (星期二) 03:28的最后更改. 在linuxCook和陆峰和Linux Wiki用户Chenxing的工作基础上. ( ...
- 在PHP中生成随机的字母数字字符串
首先,让我说几乎没有事件是真正随机的. 如果我们知道所涉及的每个因素(例如空气摩擦,重力和初始力)的影响,那么即使从理论上讲,经典的抛硬币的结果也可以预测. 同样的情况适用于随机数和字母数字字符串的生 ...
最新文章
- 怎样用c语言写高速超速罚款标准,pta高速公路超速处罚(C语言)
- 配置管理之PackageProvider接口
- magento mysql4-install_Magento
- Buffer Pool--内存总结1
- JAVA中构造器和方法的区别点
- mysql 统计 邮箱_mysql查询之 连续出现的数字,重复出现的邮箱,删除重复的电子邮箱...
- 机器人网首页应用实例工业自动化 EtherCAT 技术在库卡机器人控制系统上的应用
- c java 开发效率高_Java 的开发效率究竟比 C++ 高在哪里?
- 阿里技术:如何画出一张合格的技术架构图?
- jdk的安装及环境变量的配置
- 对接第三方顺丰丰桥电子面单打印接口教程
- 计算机boot进入u盘启动,BIOS中设置U盘启动的几种方法
- 解决屏幕大小不一导致页面下方出现多余空白的问题
- 3Dmax与BIM模型的区别
- 126邮箱自动登录程序
- 系统安全检测(使用John进行密码破解)
- 严蔚敏数据结构c++版微盘_数据结构复习知识点总结
- 【沧小海笔记】之基于FPGA的以太网设计相关知识——第三章 xilinx 三速以太网IP核(TEMAC)的介绍
- Android毕业设计答辩会问什么问题,毕业论文答辩一般会问什么问题怎么回答
- 宝马将自动驾驶和打车服务结合,最快明年在德国上路
热门文章
- 安装VM虚拟机提示 尝试创建目录 C:\Public\documents\SharedVirtual Machines 时发生错误解决方法
- C# 中串口通信 serialport1.DataReceived 函数无法触发或者出发延时等等问题解决方法
- PHP 利用PHPExcel到处数据到Excel;还有导出数据乱码的解决方案。
- mysql-8.0.17解压版安装步骤及MySQL服务无法启动问题的解决办法
- 微服务架构及分布式事务解决方案
- 如何将现有的回调API转换为Promise?
- 向现有对象实例添加方法
- 如何检查字符串是否包含特定单词?
- es6学习---.babelrc文件
- 【C#】关闭 Window 之后,无法设置 Visibility,也无法调用 Show、ShowDialogor 或 WindowInteropHelper.EnsureHandle...