我们都知道当数据过多的时候,我们制作Excel图表就会显得非常的复杂,图表上面的内容就会特别多。Excel老玩家就会想到用切片器制作动态可变化的图表来显示。今天我们就来学习一下一个比......
2023-01-08
word中自带正则表达式,不过Excel中却没有内置。可以在VBA中定义一个正则表达式函数,然后Excel中就可以调用了。VBA代码如下(VBA高亮无效,凑合着看):
1.Function ExStr(Str As String, Parttern As String, ActionID As Integer, Optional RepStr As String = "")
2. Dim regex As Object
3. Set regex = CreateObject("vbscript.regexp")
4. With regex
5. .Global = True
6. .IgnoreCase = True
7. .MultiLine = True
8. .Pattern = Parttern
9. End With
10. Select Case ActionID
11. Case 1: '替换
12. ExStr = regex.Replace(Str, RepStr)
13. Case 2: '判断
14. ExStr = regex.test(Str)
15. Case 3: '提取
16. Dim matches As Object
17. Set matches = regex.Execute(Str)
18. For Each Match In matches
19. ExStr = ExStr & Match.Value
20. Next
21. End Select
22.End Function
'正则表达式 V2
'增加:完善注释
'函数ExStr功能,根据正则表达式,替换或判断或提取字符串
'参数 str 源字符串
'参数 Parttern 正则表达式字符串
'参数 ActionID
'函数功能
'1正则方法一,替换符合正则表达式的字符,可选参数RepStr为替换值
'2正则方法二 判断是否有符合正则表达式,有返回“TRUE”,无返回“FALSE”
'3正则方法三,提取符合正则表达式的字符
'参数 Repstr 指定替换的字符,可选项,默认为空
'附常用几个正则表达式
'第二个参数Parttern为正则表达式,按规则使用即可。使用该函数会自动得到匹配结果
'例如,要提取4位数,如下调用即可:=exStr(A1,"d{4}",3)
'替换:=ExStr(B2,"d{4}",1,"0713")
'判断:=ExStr(C2,"d{4}",2)
'匹配4位数 d{4}
'
'匹配中文字符 [u4e00-u9fa5]
'匹配双字节字符(包括汉字在内):[^x00-xff]
'匹配空白行的正则表达式:ns*r
'匹配HTML标记的正则表达式:<(S*?)[^>]*>.*?</1>|<.*? />
'匹配首尾空白字符的正则表达式:^s*|s*$ 可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式
'匹配Email地址的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*
'匹配网址URL的正则表达式:[a-zA-z]+://[^s]*
'匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
'匹配国内电话号码:d{3}-d{8}|d{4}-d{7} 匹配形式如 0511-4405222 或 021-87888822
'匹配腾讯QQ号:[1-9][0-9]{4,}
'匹配中国邮政编码:[1-9]d{5}(?!d)
'匹配身份证:d{15}|d{18}
'匹配ip地址:d+.d+.d+.d+
相关文章
我们都知道当数据过多的时候,我们制作Excel图表就会显得非常的复杂,图表上面的内容就会特别多。Excel老玩家就会想到用切片器制作动态可变化的图表来显示。今天我们就来学习一下一个比......
2023-01-08
在工作中,可能许多朋友都会碰到一个情况,那就是工作簿和工作表数据的合并操作。如何将上百个工作簿快速合并到一个表格中,许多朋友可能会觉得不可思议。今天我们就来教大家学习一......
2023-01-08
今天在这里为你分享5个Excel文本函数,这些拆分和组合函数,你一定会用上的。①LEFT函数公式:=LEFT(A2,1)在Excel表格中,需要想要拆分汉字,想从哪里开始就从那哪里开始。首先选定单元格......
2023-01-08
相信大家也和我一样,才开始看到Excel可以当做翻译软件的时候会很好奇,这究竟是怎样做到的?其实,这个方法并不是很难,它是由一个函数公式而制作出来的,好了,首先我们一起来看看成......
2023-01-08
函数可以说是所用快捷方法中最为简单的一种方法,为什么很多人认为函数用起来很难了?主要是因为它拥有很长的函数公式,记不住。其实不管是学Excel函数,还是学习其他的一些快捷方法......
2023-01-08