大家都知道通配符的作用,例如进行字符串替换时,我们可使用*代替任意字符,使用?代替单个字符,这极大的提高了工作效率。 不过这似乎不是最强的,专业编程人员还有更高级的秘密武器--正则表达式。 什么是正则表达式? 正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。 许多程序设计语言都支持利用正则表达式进行字符串操作。正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。(来源于百度) 为什么使用正则表达式? 给定一个正则表达式和另一个字符串,我们可以达到如下的目的: 1. 给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”): 2. 可以通过正则表达式,从字符串中获取我们想要的特定部分。 正则表达式的特点? 1. 灵活性、逻辑性和功能性非常强; 2. 可以迅速地用极简单的方式达到字符串的复杂控制。 3. 对于刚接触的人来说,比较晦涩难懂。 由于正则表达式主要应用对象是文本,因此它在各种文本编辑器场合都有应用,小到著名编辑器EditPlus,大到Microsoft Word、Visual Studio等大型编辑器,都可以使用正则表达式来处理文本内容。 然而,在Excel中使用正则表达式,一般只能在VBA中调用,要求比较高。所以,本页中的函数才应运而生,不用写VBA,不用学专业的编程语言,只要会写公式,就可以使用正则表达式使自己拥有超强的数据处理能力。 函数:RegexString(Text,Rule,[Advance]),可使用正则表达式提取特定字符串。 参数:Text指待处理的字符串文本。Rule指正在表达式,支持常用的正则表达式,为了简化操作,可使用诸如“数字”、“字母”、“小写字母”、“大写字母”、“汉字”等名词代替正则表达式。Advance指正则表达式Rule的书写模式,默认是0,表示使用简单模式,如果设置成1表示高级模式,即Rule是C#正则表达式,比如匹配数字应书写成([\d]) 用途:从文本中提取字符串或替换字符串 举栗子: 使用简化模式,直接提取“大写字母”,注意看字符串中数字以及小写字母被过滤掉了。
使用通配符,提取数字,
|
|