正则expression式VBA Excel查找单元格内的模式
我正在尝试使用excel和VBA与正则expression式来分割数据行以匹配模式。 我所有的数据都在一列中,每一行都需要分成三部分。
我的问题涉及正则expression式的使用以及术语的相互作用以及下一个术语的使用原因。
例如,我有一行内容如下:
"([AZ]{3})(\W{5,})(.+)(\|\d\.\d)"
我是否应该将其读作“任何3个大写字母,后面跟着至less5个非单词字符,然后把所有的东西都包括在内(包括小数点的小节点吧)(不再)”? 或者是。+会一直蔓延到我的数据结束,直到它达到一个换行符?
我想我想知道的是,如果一个新术语会中断上一个术语(例如上面的“+”到“| digit.digit”)。
任何协助清理这个对我来说将是超级赞赏,谢谢你提前。
编辑:例子
ABC|^-\%!lkaddghlk shfdahah|$^~436346dghdhg|^dgf^356||P|7.7XYZ~^!HYU52
这只会捕获吗?
ABC|^-\%!lkaddghlk shfdahah|$^~436346dghdhg|^dgf^356||P|7.7
因为最后一个术语是| digit.digit,还是因为第三个捕获组中的。+而捕获所有内容?
编辑:
感谢大家的意见,你的反馈真的帮了我一个忙!
感谢帮助评论者,我现在明白,新的术语会在上面的代码中打断老的术语!