之前我们讲了字符串处理。链接在这里:常用字符串处理函数 除了上面讲的以外,我们日常字符串处理中还经常见的是字符串的比较。 举个最简单的例子,给你一些费用清单,里面包含了各种费用,例如住宿费,交通费,餐饮费。如果要对费用进行归类,把住宿和交通费都继续归类为A类,餐饮归类为B类,我们应该怎么做呢? 直男的逻辑很简单,如果费用的名称里包括住宿和交通,我们就归类为A,如果包括餐饮,就归类为B。这里我们先不考虑各种复杂的情况,例如费用明细中既包括住宿,又包括餐饮。 这里就涉及到了字符串的比较。A哥粗浅的认为,字符串比较和多工作表汇总是日常办公中最实用的两项技术。 那么如何比较字符串呢?我们今天先讲解用Like操作符来比较。 Like的定义Like用于确定一个字符串(string)是否符合某种格式(pattern)。使用方法是: string Like pattern
使用举例Sub test()
Debug.Print 'a' Like '[a]'
' 返回True,使用[]来限定单个字符或者数字的内容,这里限定了是a,所以匹配
Debug.Print 'ab' Like '[a]'
' 返回False,因为[]只能匹配单个,而ab是两个字符了
Debug.Print 'ac' Like '[a-b][a-c]'
' 返回True,在括号中使用-来指定范围。例如这里,a-b是指定从a到b
Debug.Print 'd' Like '[a-ej-z]'
' 返回True,多个范围的指定只需要把范围写到一起就可以
Debug.Print 'f' Like '[a-ej-z]'
' 返回False,f并不在指定的多个范围内
Debug.Print 'a1' Like '[a]#'
' 返回True,用#来指定单个数字
Debug.Print 'a*' Like '[a][*]'
' 返回True,特殊字符的匹配需要外加[]
End Sub 大家可能发现了,使用Like的确是可以简单快速把字符串与格式进行匹配,但是,如果对于一些复杂的字符串匹配,Like就显得无能为力了。 总结
|
|
来自: L罗乐 > 《字符提取(文本函运用)》