在某一列中查找包含一个或两个字母的函数

在某一列中查找包含一个或两个字母的函数,第1张

不懂你的意思

挖出字母个数=LEN(A1)+SUM(-ISNUMBER(--MID(A1,ROW(INDIRECT("1:" &LEN(A1))),1)))

挖出数字个数=SUM(--ISNUMBER(--MID(A1,ROW(INDIRECT("1:" &LEN(A1))),1)))

筛选即可

如果字母都在开头,

取剩余数字=RIGHT(A1,SUM(--ISNUMBER(--MID(A1,ROW(INDIRECT("1:" &LEN(A1))),1))))

所有公式全是数组,ctrl+shift+enter退出编辑

判断方法如下:

1,判断字符串中是否包含大写字母A,可用公式=IF(ISNUMBER(FIND("A",A1)),"有","无")。

2,下拉公式会发现,含有小写字母a的结果是无,该公式里的FIND函数提取的是指定的字符区分大小写。

3,如果要判断是不是包含字母A且不区分大小写,可用SEARCH函数代替FIND函数,公式=IF(ISNUMBER(SEARCH("A",A1)),"有","无")。

4,要想判断单元格中是否包含多个指定字符中的某一个,如判断单元格中是否包含“大”、“小”、“20”这三个字符中的一个,可用公式=IF(OR(ISNUMBER(FIND({"大""小""20"},A1))),"有","无")。

5,下拉公式会发现,只要包含这三个字符中的任意一个,结果都是有。

6,而要判断是否同时包含这三个字符,只要把公式中的OR改成AND即可,公式=IF(AND(ISNUMBER(FIND({"大""小""20"},A1))),"有","无")。

7,要判断包含这三个字符中的几个,可用公式=COUNT(FIND({"大""小""20"},A1))。

8,要判断单元格中是否包含字母A,且不论在字符串的什么位置,也不区分大小写,可用公式=IF(COUNTIF(A1,"*A*"),"有","无")。

9,如果要判断四个字符中是否以字母A开头,公式=IF(COUNTIF(A1,"A???"),"有","无")或=IF(COUNTIF(A1,"A*"),"有","无")。

查找位置的函数为instr函数。下标以1开始,如果不存在则返回0。

举例如下:

1、创建测试表,

create table test_instr(str varchar2(20))

2、插入测试数据

insert into test_instr values ('abc')

insert into test_instr values ('cdaf')

insert into test_instr values ('bbed')

3、查询表的记录,select t.*, rowid from test_instr t

4、编写sql,查找字母'a'在表中各记录的位置;

select t.*, instr(str,'a') location from test_instr t,可以发现,最后一条记录,不存在该字符的话,则返回0。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/6753683.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-27
下一篇 2023-03-27

发表评论

登录后才能评论

评论列表(0条)

保存