网站首页 > 基础教程 正文
今天给大家分享两个提取函数~
1. TEXTSPLIT函数万能提取
套路公式:
=TEXTSPLIT(单元格,TEXTSPLIT(单元格,提取参数,,1,1,""),,1,1,"")。
说明:
用两个TEXTSPLIT函数进行嵌套。需要提取什么数据,就将什么数据组成填写在“提取参数”里。如果数据组成是常量,可以使用“{“参数1”,”参数2”,……}”的形式。
1)提取数字
比如下面表格,需要将其中的数字全部提取出来。这些数字的组成就包括0~9的阿拉伯数据,还有小数点、负号,可以写成:
{"0","1","2","3","4","5","6","7","8","9",".","-"}
因此,在B2输入公式下拉填充即可:
=TEXTSPLIT(A2,TEXTSPLIT(A2,{"0","1","2","3","4","5","6","7","8","9",".","-"},,1,,""),,1,,"")
2)提取英文字母
英文字母有26个,如果写成常量数组太繁琐。此处可以用CHAR(ROW($97:$122))函数来表达从A到Z的26个字母。
因此,在B2输入公式即可则提取英文:
=TEXTSPLIT(A2,TEXTSPLIT(A2,CHAR(ROW($97:$122)),,1,1,""),,1,,"")
D5之所以是错误值,是因为A5中没有英文字母。
用TEXTSPLIT套路公式还是繁琐了点,可以用WPS最新函数正则表达式函数REGEXP。
2. REGEXP函数万能提取——无须嵌套
公式:=REGEXP(A2,"正则表达式")
说明:REGEXP是WPS最新版本中才有的。需要根据提取数据的类型编写正则表达式。
在B2输入“=REGEXP(A2,"[0-9.-]+")”下拉填充即可提取数字。使用正则表达式“[0-9.-]+”匹配所有整数和小数。
提取英文则输入“=IFERROR(REGEXP(A2,"[A-z]+"),"")”。使用正则表达式“[A-z]+”匹配所有的大小写字母。
提取中文输入“=IFERROR(REGEXP(A2,"[一-龥]+"),"")”。
一是中文的第一个Unicode编码,“龥”(读“yù”)是中文最后一个Unicode编码,[一-龥]+可指代所有汉字。如果不提取生僻字,也可以使用“[一-龟]+”替代,更方便输入。
好了,今天的分享就到这里,欢迎大家在评论区评论哦~
猜你喜欢
- 2025-03-30 使用正则表达式验证手机号-C#学习进阶
- 2025-03-30 Excel正则表达式:提取出负数的操作方法
- 2025-03-30 python利用正则提取字符串中的手机号
- 2025-03-30 WPS新增REGEXP函数正则表达式的实践应用4-提取
- 2025-03-30 551 实用指南:表格中日期格式的规范录入与转换技巧
- 2025-03-30 JMeter中3种参数值的传递(jmeter调用参数)
- 2025-03-30 python接口自动化(十一)--发送post「data」(详解)
- 2025-03-30 EXCEL VBA学习笔记:正则表达式(二)表达式语句写法
- 2025-03-30 玩转Python正则表达式,开启高效数据提取之旅
- 2025-03-30 这个新增的Excel提取函数,太厉害了!WPS也能用了!
- 最近发表
- 标签列表
-
- gitpush (61)
- pythonif (68)
- location.href (57)
- tail-f (57)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- css3动画 (57)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- canvasfilltext (58)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- node教程 (59)
- console.table (62)
- c++time_t (58)
- phpcookie (58)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)