正则表达式小技巧,sql中in的字符串处理
2022/2/27 19:21:36
本文主要是介绍正则表达式小技巧,sql中in的字符串处理,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
工作中我经常写sql,当写带in的语句时,需要敲好多单引号,逗号,挺累手的,还易出错。因此,我写了一个小工具,处理这种繁琐工作。原理简单,利用正则表达式匹配、替换。
先看界面,一个html页面,包含三个js函数。下面我会一一介绍:
一、 sql_in()按钮
为多个字符串加上单引号和逗号,结果可以直接用于sql中的in语句,效果如下:
按钮中的js函数:
function sql_in1(){ //获取需要处理的字段,即上面的textarea里面的内容 var sqltext = document.getElementById('sqltext').value; // 将开头和结尾的空格去掉 sqltext = sqltext.replace(/(^\s*)|(\s*$)/g, ""); //将每行结尾的回车替换成一个单引号、逗号、回车,再加一个单引号 sqltext = sqltext.replace(/"/g,'"+"\\""+"').replace(/[\r\n]/g,'\'\,\n\''); //将结果的开头和结尾加上单引号 sqltext ="'" +sqltext +"'"; //将结果输出到下面的textarea document.getElementById('javatext').value = sqltext; }
可直接将处理结果复制到sql语句中:
select * from table1 where id in ('30029', '30021', '30022', '30027', '30020')
二、sql_in(,)按钮
效果如下:
按钮js代码:
function sql_in2(){ var sqltext = document.getElementById('sqltext').value; // 将开头和结尾的空格去掉 sqltext = sqltext.replace(/(^\s)|(\s$)/g, ""); //将逗号替换成一个单引号、逗号、回车,再加一个单引号 sqltext = sqltext.replace(/[,]/g,'',\n''); //将结果的开头和结尾加上单引号 sqltext ="'" +sqltext +"'"; document.getElementById('javatext').value = sqltext; }
三、js_in(,)按钮
效果如下:
按钮js代码:
function js_in(){ var sqltext = document.getElementById('sqltext').value; // 将开头和结尾的空格去掉 sqltext = sqltext.replace(/(^\s)|(\s$)/g, ""); //将每行结尾的回车替换成一个逗号 sqltext = sqltext.replace(/[\r\n]/g,','); document.getElementById('javatext').value = sqltext; }
以上是我工作中经常遇到的需要处理的字符串格式,欢迎热心的小伙伴补充其他常见的形式。
下面是这个工具的下载链接,欢迎各位下载:
https://files.cnblogs.com/files/iceriver315/sqlconvert2.rar?t=1645951574
这篇关于正则表达式小技巧,sql中in的字符串处理的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-11正则表达式学习:入门指南与实践技巧
- 2024-08-15正则表达式入门:基础教程与实践指南
- 2024-01-0939. 干货系列从零用Rust编写负载均衡及代理,正则及格式替换
- 2024-01-08如何编写高效的正则表达式?
- 2023-12-29"Matlab中的正则表达式:强大而灵活的工具"
- 2023-09-30这个正则 为啥同样的单号第二个就提取不出来?
- 2023-06-086.2 re 正则表达式
- 2023-06-06将字符串里的\x01,\x02这些替换掉用正则表达式无效?
- 2023-05-24正则表达式详解
- 2023-05-17我让gpt写了一段正则表达式代码,可是运行报错,可以帮忙看看哪里出了问题?