2000元课程
函数+VBA
往期推荐
上篇说到REGEXP第二参数中可以用[0-9]的方式来表示数字0到9,那提取字母是不是可以用[A-Z]表示26个字母呢?
=REGEXP(A1,"[A-Z]+")
答案是可以的,但似乎还要区分大小写,于是加入小写字母:
=REGEXP(A1,"[A-Za-z]+")
或
=REGEXP(A1,"[A-z]+")
学习了这些参数,从字符串中提取数字和英文字简直易如反掌,这已经可以满足很大一部分WPS用户的需求了。
如果要同时提取,按上面公式的逻辑,把要提取的内容连接起来就可以了:
=REGEXP(A1,"[A-Za-z0-9.]+")
也不排除要提取汉字的情况,其表达式为[一-龟]。
没错,就是一龟传三代,人走龟还在的一和龟。
以后老板再要你整理这种反人类的数据,也不是多大个事儿了,REGEXP提取汉字,搭配WPS365函数WRAPROWS简直不要太快:
=WRAPROWS(REGEXP(A1,"[一-龟]+"),2)
拆分姓名电话之类的更不在话下,数组公式一次搞定:
=REGEXP(A2,{"[一-龟]+","[0-9]+"})
和大部分语言一样,正则表达式的规则并不唯一,同一事物可以有多种表达方式。
关于数字,字母和汉字的规则总结如下。+和\d以外的字符用于表示某一类字符的合集,通常被称作字符集。
联系客服