交叉重复提取妙计! wps中REGEXP正则表达式函数用法
问题求助SOS:如何对比两个单元格字符,将交叉重复的字符提取到另一个单元格中?
虽然小编不知道这位朋友咨询的问题具体应用于什么办公场景中,但既然提出了问题,肯定就是存在具体的需求,那咱就要想方法解决一下。
如下图所示:
有“数据A”与“数据B”两列数据,我们想要把每行对应的两个单元格中的重复出现的字符提取到C列单元格中显示。
比如A2与B2单元格中都存在“1”与“4”,故在C2单元格中显示交叉重复值:“14”。
举例数据清晰明了,提干相对简单。

下面我们分两种思路进行问题剖析,两种方法都用到了REGEXP正则表达式函数(WPS版),可见学习并了解一些REGEXP函数的常规知识很重要。
第一步:正则字符拆分
输入强大的REGEXP正则表达式函数:
=REGEXP(B2,".")
.(点):表示任意的单个字符。
REGEXP函数省略第3参数,表示“提取”模式。提取B2单元格中任意的单个字符,则会把所有的单个字符以数组溢出的方式显示在一行多个单元格中。
此步的核心目的:
按1个字符的长度进行数据分列。

第二步:正则二次提取
继续向外嵌套一个REGEXP函数:
=REGEXP(A2,REGEXP(B2,"."),0)
我们将上一步REGEXP提取到B2单元格的每个字符在A2单元格内容中进行查找,如果出现过,则被提取显示出来;没有出现过的,则显示成错误值。
比如B2单元格中的字符“1”与“4”,在A2单元格“12345”内容中出现过,故显示为“1”与“4”,而B2单元格中的字符“7”与“8”与“9”,在A2单元格“12345”内容中未出现过,故显示为错误值。
原理很容易理解。

第三步:规避错误值
使用常见的规避错误值函数IFERROR函数:
=IFERROR(REGEXP(A2,REGEXP(B2,"."),0),"")
将上一步的公式,作为IFERROR函数的第一参数判断条件,如果第一参数返回错误值,则强制执行显示为第二参数空值;否则返回第一参数本身。

第四步:合并
使用常规的CONCAT合并类函数:
=CONCAT(IFERROR(REGEXP(A2,REGEXP(B2,"."),0),""))
将上一步提取到的、散落在不同单元格的“交叉重复值”,合并到一个单元格中显示。
如果想用间隔符进行间隔的话,可以用TEXTJOIN函数代替CONCAT函数。

下面我们继续说说第二种解题思路。
第一步:正则字符拆分
使用REGEXP函数:
=REGEXP(B2,".")
与第一种方法的第一步原理完全相同。核心目的:按1个字符的长度进行数据分列。

第二步:查找
使用FIND查找函数:
=FIND(REGEXP(B2,"."),A2)
查找B2单元格中的每个字符,依次在A2单元格中出现的起始位置。
比如B2单元格中的“1”与“4”在A2单元格中的起始位置依次是第1个位置与第4个位置,故返回“1”与“4”;而“7”、“8”、“9”在A2单元格中均未出现过,所以查找不到对应的位置,显示错误值。

第三步:提取
使用MID提取类函数:
=MID(A2,FIND(REGEXP(B2,"."),A2),1)
以A2、B2单元格为例:
在A2单元格内,分别从第1个起始位置处、第4个起始位置处,提取字符长度为1的字符串,故返回“1”与“4”。

第四步:规避错误值
使用IFERROR函数:
=IFERROR(MID(A2,FIND(REGEXP(B2,"."),A2),1),"")
如果第一参数(上一步公式返回结果)为错误值,则显示为第二参数指定的固定值空值。否则返回第一参数本身。

第五步:合并
使用CONCAT合并类函数:
=CONCAT(IFERROR(MID(A2,FIND(REGEXP(B2,"."),A2),1),""))
将上一步返回的“交叉重复值”合并到一个单元格中显示。

相关文章

SUM函数求和出错怎么办? wps数据格式错误导致SUMIFS失效的解决办法
遇到SUM函数统计却没有得到结果的问题怎么办?先别急着检查公式对不对,很可能你的统计区域里藏了文本格式的数据,下面我们就来看看详细解决办法2025-08-06
怎么根据总箱数编排箱号? wps中sum+if+&公式快速搞定
如何根据总箱数排箱号序号?小编给到的解决方案是sum+if+&,运用“累计”与“逻辑”的思维,快速实现最终的目标,详细请看下文介绍2025-07-30
效率翻倍! wps中regexp+asc+evaluate公式快速结算杂乱内容数据的技巧
wps表格中记录的内容,有单位有数据,想要根据记录快速计算出需要计算的结果,我们可以利用regexp+asc+evaluate函数快速提取数据计算,详细请看下文介绍2025-07-30
实现动态装箱计算! wps中ddb+text函数公式的使用技巧
wps中有很多函数组合到一起会达到神奇的效果,比如我们今天用到的ddb+text函数,可以轻松实现现动态装箱计算,详细如下2025-07-30
分享一个超神奇的公式! wps表格中对混合内容中的分数求和的技巧
wps表格中有很多内容,想要单独对分数数据进行求和,方法很多,今天我们用“=”+regexp+evaluate+sum这个公式对混合内容的分数求和,详细如下2025-07-22
无需配置点击即用! WPS免费接入DeepSeek上传表格一键生成PPT等功能全都
WPS已接入DeepSeek,无需配置,无需等待,点击即用,和“服务器繁忙”说再见,下面我们就来看看详细教程2025-07-22
根据简称查询全称太香了! wps中regexp+vlookup公式使用技巧
wps表格中数据需要做一个对称,想要实现将数据中的简称和全称对应起来,该怎么操作呢?下面我们就来看看详细教程2025-07-22
wps怎么带括号求和? regexp+sum这个厉害的求和公式请收藏
最近一直在研究REGEXP函数,发现比想象中的更强大,过去一大堆案例都可以通过这个数解决,比如今天这个案例,需求很简单,需要将括号内的数字进行求和运算,我们该如何实现2025-07-22
lookup加座啥意思? wps中lookup+sumifs搞定有合并单元格的多条件求和
在Excel表格中,如何根据合并单元格来进行数据的查询?想要实现这样的操作,最简单的方法就是利用LOOKUP函数2025-07-22
从此以后写公式又有一种新路子! wps中用Let函数玩变量的技巧
wps中Let函数给计算结果分配名称,就像编程里的变量一样,它让你的公式更清晰,减少冗余,下面我们就来看看用Let函数玩变量的技巧2025-07-22





最新评论