Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 3000|回复: 3

[已解决]求一个正则表达式

[复制链接]
发表于 2015-8-8 14:42 | 显示全部楼层 |阅读模式
本帖最后由 Ex_EP 于 2015-8-9 20:55 编辑

需要一个正则表达式 效果如下图所示:     有附件   谢谢

最佳答案
2015-8-8 15:25
Sub test()
Dim myreg
Dim arr, brr(1 To 10000, 1 To 1)
arr = Range("A1").CurrentRegion
Set myreg = CreateObject("VBSCRIPT.REGEXP")
For i = 2 To UBound(arr)
    With myreg
        .Pattern = "\b[a-zA-Z]+"
        .Global = True
        brr(i - 1, 1) = .Execute(arr(i, 1))(0)
    End With
Next
Range("C2").Resize(i) = brr
End Sub
QQ截图20150808143812.png

求一个正则表达式.rar

8.33 KB, 下载次数: 10

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2015-8-8 15:25 | 显示全部楼层    本楼为最佳答案   
Sub test()
Dim myreg
Dim arr, brr(1 To 10000, 1 To 1)
arr = Range("A1").CurrentRegion
Set myreg = CreateObject("VBSCRIPT.REGEXP")
For i = 2 To UBound(arr)
    With myreg
        .Pattern = "\b[a-zA-Z]+"
        .Global = True
        brr(i - 1, 1) = .Execute(arr(i, 1))(0)
    End With
Next
Range("C2").Resize(i) = brr
End Sub
回复

使用道具 举报

发表于 2015-8-8 15:53 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2015-8-9 21:00 | 显示全部楼层
dachairen 发表于 2015-8-8 15:53
Pattern = "\b[a-zA-Z]+-?[a-zA-Z]+"

刚刚 测试了 下 其实 你的才是正确的   因为楼上 那个  EP-TZ 无法满足  而您 提供的 可以满足  我却没有将你的设置为最佳答案  实在抱歉  谢谢您的帮助
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-8 08:53 , Processed in 0.246115 second(s), 12 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表