正则查找倒数第二个符合条件的字符串_EXCEL正则表达式的基础语法
正则表达式的基本概念及用途了解之后,我们就来学习下具体的语法,先以一个简单的例子来讲解。
基础语法:
比如,A1单元格中有一串字符:aabbccddaabbcc,我们要把其中的a找到,然后替换成o。
代码如下:
Sub test()
Dim regx As Object, t$, k, s, n
t = "aabbccddaabbcc"
Set regx = CreateObject("vbscript.regexp")'引用正则表达式
regx.Global = True '查找范围,true为全部查找,false只查找第一个,默认是false。
regx.Pattern = "a" '引号里书写正则表达式,这里要查找a,就直接写个a
Set k = regx.Execute(t) 'Execute方法的结果为一个对象,返回匹配成功的结果。
For Each s In k '通过循环K可以得到该对象中的每个元素。
MsgBox s
Next
n = regx.Replace(t, "o") '将匹配成功的结果做替换
MsgBox n
End Sub
上面的代码后面都有注释,首先要引用正则表达式,前期绑定也可以,直接创建也可以,然后要对regexp的两个属性做出指定。
Global属性,指查找范围,true为全部查找,false只查找第一个,如果上面案例中其属性改为false,那么只要该字符串中查找第一个a。
Pattern属性,指的是正则表达式。
下面讲下正则表达式的两个方法:
Execute方法,返回匹配成功的结果,是一个对象,通过for each 可以循环其中的值。
Replace方法,将匹配的结果做替换,regx.Replace(t, "o"),t为原字符串,第二个参数为要替换为的结果。
普通字符的替换:
了解了基础的语法之后,我们来看下如何用正则对普通的字符做替换。
如上例中,把A列部门中的门字去掉。
思路:
对A列部门循环,循环出来的值用正则表达式匹配门字,并把匹配的结果替换成空。
代码如下:
Sub test1()
Dim regx As Object, rng1 As Range
Set regx = CreateObject("vbscript.regexp")
With regx
.Global = True
.Pattern = "门"
End With
For Each rng1 In Range("a2:a11")
rng1(1, 2).Value = regx.Replace(rng1.Value, "")
Next
End Sub
这里注意regexp的两个属性可以用with语法来书写,这样显得简洁明了。当然这节课我们只是对正则表达的基础语法做了个了解,正则表达是真正的魅力在Pattern = "……",引号中的表达式,后面的课程中我们会体会到他的强大之处。
转自:米宏Office
正则查找倒数第二个符合条件的字符串_EXCEL正则表达式的基础语法相关推荐
- JAVA 8 lambda 表达式实现按某个属性值查找对象集合中符合条件的对象
转载自:https://www.cnblogs.com/lindsayYang/p/9843599.html JAVA 8 lambda 表达式实现按某个属性值查找对象集合中符合条件的对象 当前的需求 ...
- 键盘录入一个字符串要求长度为8不符合输出错误符合条件将字符串中所有大写字符替换成M
键盘录入一个字符串要求长度为8不符合输出错误符合条件将字符串中所有大写字符替换成M 方式一:不使用正则 import java.util.Scanner; public class Test { pu ...
- php正则替换%3cbr%3e_PHP preg_replace() 正则替换所有符合条件的字符串
需要我们用程序处理的数据并不总是预先以数据库思维设计的,或者说是无法用数据库的结构去存储的. 比如模版引擎解析模版.垃圾敏感信息过滤等等. 一般这种情况,我们用正则按我们的规则去匹配preg_matc ...
- preg_replace() 正则替换所有符合条件的字符串
PHP preg_replace() 正则替换,与Javascript 正则替换不同,PHP preg_replace() 默认就是替换所有符号匹配条件的元素 需要我们用程序处理的数据并不总是预先以数 ...
- 提取某个符合条件的字符串中的中文字符 例子
2019独角兽企业重金招聘Python工程师标准>>> public class TestRegex { public static void main(String[] a ...
- 1 EXECL的查找:(1)精确查找,(2)模糊查找,(3)查多个符合条件的第1个或最后1个
目录 1 精确查找 (精确查找是模糊查找的子集) 2 模糊查找 (理论上精确查找可以找到的,模糊查找也可以) 3 精确查找,多个符合条件的内容里第1个或最后1个 (就是用模糊查找方法去查精确匹配的数 ...
- js查找数组中符合条件的元素
js查找数组中符合条件元素的几种方法 一.利用for循环进行查找 let arr = [{name: 'zhangsan', age: 18},{name: 'lisi', age: 17},{nam ...
- Matlab:查找符合条件的数组元素
Matlab:查找符合条件的数组元素 应用单个条件 应用多个条件 替换符合条件的值 此示例说明如何通过对数组应用条件来过滤数组元素.例如,您可以检查矩阵中的偶数元素.查找多维数组中所有 0 值的位置, ...
- EXCEL文本处理总结:如何查找(/定位)字符串内,符合条件的多个符号里的最后一个?
目录 题外话:学习总结 1 新手切忌贪多 2 熟练者切忌懒惰 3 这2件事恰恰都和人性相反 1 EXCEL文本处理相关函数 2 查找函数 find() 和 search() 2.1 find() 2 ...
最新文章
- linux mud 游戏,快刀幻想mud文字传奇-快刀幻想mud神器兑换码-快刀幻想mud下载v1.80-Linux公社...
- php 数字转中文函数 1转一,一个阿拉伯数字转中文数字的函数-PHP教程,PHP函数
- spfa 判断负环 (转载)
- Qt程序打包发布方法(使用官方提供的windeployqt工具)
- android 可行性分析,可行性研究项目分析程序与步骤
- 代码 直接调节显示设备亮度_LED显示屏参数系列,亮度是什么,如何调节,如何选择...
- linux进程线程协程的区别,进程和线程、协程的区别
- commons-logging和slf4j都是日志的接口
- 判断某一点是否在三角形内
- 3D数学基础(一) | 坐标系
- MPP模块及sample_venc分析
- 简明python教程gitbook_简明Python教程|中英文mobi epub pdf|源代码
- android判断apk的版本,Android APP 版本检查
- 做外贸的你不能犯的十大邮件错误
- 计算机应用基础操作题答案,电大本科计算机应用基础网考操作题及答案
- Android录制声音文件(音频),并播放
- 命令行的艺术( the-art-of-command-line )
- 攻防世界逆向入门题之no-strings-attached
- 图书管理开题报告php,基于PHP+SqlServer的图书管理系统,毕业论文设计,答辩ppt,开题报告,外文翻译,苹果,硕士研究生,iphone...
- NoSQL概述-从Mongo和Cassandra谈谈NoSQL
热门文章
- print2flashwindows7旗舰版下载哪一个_JUJUMAO_MSDN原版 win 7 二合一 旗舰版32位 64位原版ISO镜像...
- 纯净pe工具_微PE工具箱2.0
- windows副本不是正版怎么办_盗版系统总是崩溃?别着急,让我来告诉你正版系统怎么下载...
- 艾特某人代码实现_Vue@某人,At某人,仿新浪微博@某人,@user,艾特,艾特某人...
- python列表各元素修改为int类型
- 工业以太网交换机的优势以及注意事项介绍
- 如何对工业交换机端口进行调试?
- 工业交换机常见问题汇总!
- 工业交换机中:千兆级别和快速级别传输效率对比
- 【渝粤题库】广东开放大学 计算机应用基础(本) 形成性考核