今天遇到一个SQL语句需要批量替换内容,原语句和需要转换后的效果如图:
通过正则表达式查找替换
手工替换的话,可行是可行,但是效率低一点,直接查找替换也是行不通的,因为被替换的内容不是固定的。观察发现,被替换内容是有规则的:
B.c1_10到B.c1_60,和B.c2_10到B.c2_60,都要替换成''空字符。
剩下的B.c*,都要换成0,
简化需求需求就变成这样:把B.c?_?0替换成0,其中第一个?是1或者2,第二个?是1-6中的一个数字;再把B.c*,替换成0就可以,其中*表示多个未知字符。
在Word中用正则表达式怎么表示呢?
B.c?_?0可以写成(B.c[1-2]_[1-6]0)
B.c*,就直接写成(B.c*,)
我们进行两次批量替换,就可以达到目的。替换操作如图:
批量换成空字符
批量换成0
更多正则表达式方式可以网上查找"Word查找栏代码·通配符一览表",就可以查询到,作用还是非常大的。