图片宝贝好色
前一阵子太忙,公众号住手更新了一段时分。最近刚有点时分,思起来望望微软有什么更新,果真发现微软在Excel中推出了正则抒发式函数。
其实很早就有东说念主问我对于Excel中使用正则抒发式的问题,还有东说念主吐槽:Word中皆复旧正则抒发式,为什么在Excel中不复旧?
当今宇宙不错宽心了,Excel也复旧了!这里我就先马虎先容一下这几个正则抒发式函数的使用,行为复原更新的第一篇。
注:当今还是惟一测试频说念的一又友不错使用这几个正则抒发式函数。什么是正则抒发式
正则抒发式,英文是Regular Expression,简写为Regex,是一种按照特地规矩界说的字符串,用来暗意一种字符串模式。
正则抒发式时常用来进行字符串查找,匹配或分析,比如查验一个字符串是否得当某种特定的模式,从一个字符串中抽取得当特定模式的子串,大概将得当特定模式的子串替换成给定的字符串。
这三种使命分裂对应Excel中的三个函数。
一个典型的正则抒发式是这样的:
^a(?=.*\d)(?=.*[A-Z])(?=.*[a-z])[a-zA-Z\d]{7,}
不进程一段时分的学习只怕是碎裂易证据这个正则抒发式的含义的。
好在,也有一些不那么复杂的不错很容易掌持的规矩,比如:
“[0-9]”:放浪一个数字
“[a-z]”:放浪一个小写字母
“.”:放浪一个字符
“a”:一个小写字母“a“
“a*”:放浪多个(0个或多个)小写字母”a“
“a+”:一个或多个小写字母”a“
等等等等.....
说真话,我自己对正则抒发式函数的信得过作用是有所怀疑的。我不是怀疑它的宽绰功能,而是怀疑有些许Excel用户能信得过掌持正则抒发式。
不外对平凡东说念主来说,这个门槛也裁汰了好多,因为不错使用AI帮咱们生成正则抒发式,只须你态状规矩,当今一般的AI皆不错完成这个使命。比如,在通义千问中,就不错这样发问:
要查找以a来源的包含至少8个数字和字母的字符串,同期包含数字,大写字母和小写字母,请写出正则抒发式
AI给出了这样的回话:
巨乳gif图片
REGEXTEST
REGEXTEST函数的作用是查验一个字符串是否得当给定的模式,要是是,复返TRUE,不然复返FALSE。
语法如下:
REGEXTEST (文本、模式、[case_sensitivity])
其中,
第一个参数“文本”,暗意需要查验的字符串;
第二个参数“模式”,暗意给定的模式;
第三个参数开发是否按照大小写敏锐的格式查验。要是是0,暗意大小写敏锐,要是是1,暗意大小写不敏锐。缺省为0。
底下是一个例子:
图片
B列使用TEGEXTEST查验A列相应的字符串是否得当给定模式。查验成果A1得当,A2不得当。REGEXEXTRACT
这个函数的作用是一个字符串中索要得当给定模式的子串。
语法如下:
REGEXEXTRACT (文本、模式、[return_mode]、[case_sensitivity])
其中,
第一个参数“文本”,暗意待索要子串的字符串;
第二个参数“模式”,暗意给定的模式;
第三个参数,暗意复返类型。要是为0,复返匹配的第一个子串;要是为1,以数组神色复返匹配的通盘子串;要是为2,复返第一个匹配项的拿获组;
第四个参数,开发是否按照大小写敏锐的格式匹配。要是是0,暗意大小写敏锐,要是是1,暗意大小写不敏锐。缺省为0。
底下是一个例子:
图片
这里咱们使用了正则抒发式:
[A-Z][a-z]+
这里的模式是:来源是一个大写字母,然后随着1个或多个小写字母。
是以在字符串:
Regular Expression Functions
中,有三个得当这个模式的字符串:
Regular
Expression
Functions
因此,B1中的公式就复返第一个:Regular。
B2中的公式需要复返一个数组,包含通盘的三个匹配成果。
这里咱们莫得演示拿获组的用法,那是正则抒发式中比拟高档的主见。咱们在以后再刺目先容。
不错思象,这个函数对于那些字符串分拆的场景短长常有效的。
REGEXREPLACE
这个函数的作用是将字符串中得当给定模式的子串替换为其他的实际。
语法如下:
REGEXREPLACE (文本、模式、replacement、[occurrence]、[case_sensitivity])
其中,
第一个参数“文本”,暗意给定的字符串;
第二个参数“模式”,暗意给定的模式;
第三个参数“replacement”,暗意替换后的字符串;
第四个参数,暗意需要替换的子串序号。要是是0,暗意通盘得当该模式的子串皆需要替换。要是是1,就替换第一个得当模式的子串,依此类推。要是是负数,就从后往前数。
第五个参数,开发是否按照大小写敏锐的格式匹配。要是是0,暗意大小写敏锐,要是是1,暗意大小写不敏锐。缺省为0。
底下是一个例子:
图片
这里,咱们但愿将身份证号的后四位替换成****,因此使用正则抒发式:
"[0-9]{4}$"
$暗意字符串完毕,{4}暗意4个,一说念的含义是完毕的四个数字组成的子串。
这个公式的作用便是将完毕的四个数字替换成"****"。
尽管REGEXREPLACE函数中莫得提到拿获组,不外使用拿获组不错完成好多复杂的替换。咱们以后再刺目先容。
追想
从主见上,这三个函数相配容易证据。它们的功能也相配宽绰。不外笃信宇宙也会发现,要思发达着三个函数的威力宝贝好色,证据和掌持正则抒发式是必须的。背面我会蚁合正则抒发式先容刺目先容这三个函数的使用。
本站仅提供存储做事,通盘实际均由用户发布,如发现存害或侵权实际,请点击举报。