今天咱们来先容正则抒发式函数REGEXP拳交 國產。
这个函数终点好用。有了它,许多文本函数都不错毋庸了。
在先容它之前,咱们一皆来学习一下正则抒发式的基础常识。
图片
正则抒发式基础常识
正则抒发式即是用一些极端的字符来抒发或回归字符串的章程或特质。比如用\d或[0-9]示意数字,那么\d{11}就示意11位的整数。
操作符
草榴论坛含义
示例
.
少许点,示意任何单个字符
[]
中括号示意字符集,对单个字符给出取值范围
[abc]示意a或b或c,[a-z]示意a-z单个字符(轻易一位小写字母)
[0-9]示意单个轻易数字
[^]
非字符集。对单个字符给出排斥范围
[^abc]示意非a或非b或非c的单个字符
*
星号示意前一个元素的0次大要无穷次的膨胀
abc*示意ab、abc、abcc、abcccc等等(匹配 ab)
+
前一个元素的1次大要无穷次的膨胀
abc+示意 abc、abccc、abcc、abccccc等(不匹配 ab)
?
前一个元素的0次大要1次膨胀
abc?仅示意 ab、abc。
不错把“4th|4”简化为“4(th)?”。咱们看到“?”作用的元素是统统这个词括号了
|
把握抒发式中的轻易一个。把握抒发式不错是多字符。把稳与[ ]的永诀
abc|def示意abc、def
{m}
膨胀前一个字符m次
ab{2}c示意abbc
{m,n}
膨胀前一个字符m至n次(含m和n次)
ab{1,2}c匹配abc、abbc
^
匹配字符串开始
^abc示意abc在一个字符串的开始,即不匹配 aabc
$
匹配字符串完毕
abc$示意abc在一个字符串的完毕,即不匹配abcd
()拳交 國產
分组标识里面只可使用|操作符
(abc)示意abc ,(abc|def)示意abc、def
\d
一位数字,等价于[0-9]
\w
构成单词的字符,等价于[A-Za-z0-9_]
示意字符小写大写的a-z和数字0-9以及下划线_
底下咱们来看一下REGEXP函数的基本语法及利用案例
图片
REGEXP语法
=REGEXP ( 字符串,正则抒发式,匹配步地,替换实质 )
第三参数的匹配步地有三种:0索求、1判断、2替换
图片
索求字符串中的数字
图片
正则抒发式解说:
[0-9]:匹配轻易一个数字字符,从0到9。
.:匹配少许点字符。在正则抒发式中,点是一个极端字符,示意匹配除了换行符除外的轻易单个字符。但在这里,由于它被放在了方括号内,它失去了极端含义,只示意匹配字面量的点字符。
-:匹配短横线字符。相似,在方括号内,短横线仅仅一个遍及字符,不示意范围。
[0-9.-]:方括号示意一个字符集,该联结包含数字0到9、点字符和短横线字符。匹配时,它会尝试匹配这个联结中的轻易一个字符。
+:示意匹配前边的字符集一次或屡次。因此,[0-9.-]+会匹配一个或多个邻接的数字、点或短横线字符。
若是字符串中有多个数字,在最外围套一个SUM函数,就能乞降
=SUM(--REGEXP(A5,"[0-9.-]+"))
图片
拆分中英混杂的字符串
图片
索求中语的公式:
=REGEXP(A1,"[一-龟]+")
[一-龟]代表汉字,详实解说请阅读底下的著作
为什么不错用一-龟来指代常用汉字?
索求非中语的公式:
=REGEXP(A1,"[^一-龟]+")
正则抒发式解说:
[]:这是一个字符集,用于匹配括号内列出的轻易单个字符。
^:在字符集的开始,它示意诡辩,即匹配不在字符联结的任何单个字符。
一-龟:这示意从汉字“一”到汉字“龟”的字符范围。把稳,这个范围并不是按照字母要领来界说的,而是按照 Unicode 编码的要领。这意味着它将匹配从“一”到“龟”这个范围内统统的汉字。
+:示意匹配前边的步地(在这里是字符集)一次或屡次。
图片
索求第一个汉字后的统统实质
公式:
=REGEXP(A2,"[一-龟]+.*")
图片
正则抒发式解说:
[一-龟]:这是一个字符集,示意匹配从汉字“一”到汉字“龟”之间的轻易单个汉字。把稳,这里的范围并不是基于字典要领,而是基于这些汉字在 Unicode 编码中的要领。
+:示意匹配前边的字符集(在这里是 [一-龟])一次或屡次。也即是说,这个正则抒发式会匹配一个或多个邻接的汉字,这些汉字的范围是从“一”到“龟”。
.*:这里的 .示意匹配除了换行符除外的轻易单个字符,而 *示意匹配前边的字符(在这里是 .)零次或屡次。因此,.*会匹配轻易数目的轻易字符(包括零个字符)。
图片
索求第一个汉字前的实质
图片
公式
=REGEXP(A2,"^[^一-龟]+")
正则抒发多解说:
^:这个标识示意匹配字符串的运转位置。也即是说,统统这个词正则抒发式步地必须匹配字符串的肇端部分。
[]:这是一个字符集,用于匹配括号内列出的轻易单个字符。
^:在字符集的开始,它示意排斥、诡辩,即匹配不在字符联结的任何单个字符。把稳,这里的 ^是字符集内的第一个字符,因此它示意诡辩,而不是匹配字符串的运转位置。
一-龟:这示意从汉字“一”到汉字“龟”的字符范围。把稳,这个范围并不是按照字母要领来界说的,而是按照 Unicode 编码的要领。
+:示意匹配前边的步地(在这里是字符集)一次或屡次。
图片
按指定字符拆分
图片
公式:
=REGEXP(A2,"([^,]+)")
按换行符拆分
图片
=REGEXP(A2,".+")
正则抒发式解说
.:这个标识在正则抒发式中示意匹配除了换行符除外的轻易单个字符。
+:这个标识示意匹配前边的字符(在这里是 .)一次或屡次。
还有其他更复杂的用法,咱们下篇著作再先容。
图片
图片
图片
本站仅提供存储行状,统统实质均由用户发布,如发现存害或侵权实质,请点击举报。