【问题】如何提取两个字符串中的相同部分?

懒人办公
懒人办公

创作者俱乐部成员

【问题描述】

下图中A、B两列分别为文本1和文本2,请将两个文本中的相同字符串提取出来。如“WPS社区”“社区工作人员”,其中相同的部分为“社区”。本案例已经用JSA定义函数实现了,请用公式实现相同效果。

【JSA实现效果】

【JSA代码】

按ALT+F11打开WPS宏编辑器,复制下方代码粘贴到编辑器中。

function getCommonPart(rg1, rg2) {//自定义函数,包含rg1和rg2两个单元格对象

let str1 = rg1.Value2; //获取rg1单元格值,赋值变量str1

let str2 = rg2.Value2; //获取rg2单元格值,赋值变量str2

let arr1 = str1.split(''); //将str1拆分为单个字符,并存入数组arr1

let arr2 = str2.split(''); //将str2拆分为单个字符,并存入数组arr2

//在arr1中筛选出arr2中的相同字符,写入数组commonPart

let commonPart = arr1.filter(char1 => arr2.includes(char1));

return commonPart.join(''); //将数组commonPart用顿号连接为一个字符串

}

【公式如何实现?】

请在C2:C3设置公式,并将公式写在评论区。

【往期内容】

1.对明细数据分类汇总,统计库存

2.两表按关键字相互链接,快速查找定位

3.批量创建和删除工作表

4.批量将工作表拆分为独立工作簿

5.批量将工作簿合并为工作表,免费实现会员功能

6.实时查询数据,高端的效果,往往只需要简单的代码

7.按照内容拆分工作表,免费实现会员功能

8.批量合并工作簿,免费实现终极会员功能

9.自动核对报表报送情况,表姐表妹的福音来了

10.以指定单元格内容批量命名表格文件

11.用工作表做数据库,将出库单保存为出库明细

12.用AI拆分工作表,一句话就能搞定

13.在表格中按名称批量插入对应图片

14.按分隔符拆分数据

15.合并同类项,按部门合并姓名,并用顿号隔开

【素材下载】

https://kdocs.cn/l/cew9VHlvOiaf

贵州省
浏览 2072
收藏
12
分享
12 +1
22
+1
全部评论 22
 
 粘豆包
老师,您好。WPS能不能用js宏把1列数据“导出列表和计数”,这个是会员功能
· 辽宁省
回复
 
承诺敌不过时间
很方便,实用
· 重庆
回复
 
小雯子
厉害
· 河南省
回复
 
赵翰林
非常好
· 西藏
回复
 
zmpost
讲解的都很详细,也很实用,而且通俗易懂!
· 河南省
回复
 
danica Ma.
=TEXTJOIN("",TRUE,IF(IFERROR(FIND(MID(A2,COLUMN(A:H),1),B2),0),MID(A2,COLUMN(A:H),1),"")),按ctrl+shift+enter快捷键输出;然后下拉填充公式即可。
· 宁夏
回复
 
张俊
张俊

WPS函数专家

懒人办公老师好,我给出的公式具体如下: =CONCAT(IFERROR(MID(A2,ISNUMBER(FIND(MID(A2,SEQUENCE(LEN(A2)),1),B2))*SEQUENCE(LEN(A2)),1),"")) 请懒人办公大佬多多指点。 详情如图所示:
· 上海
2
回复
懒人办公
懒人办公

创作者俱乐部成员

牛牛牛
· 中国
1
回复
 
丁功令
丁功令

创作者俱乐部成员

在C2输入公式=TEXTJOIN("",TRUE,IF(IFERROR(FIND(MID(A2,COLUMN(A:H),1),B2),0),MID(A2,COLUMN(A:H),1),"")),按ctrl+shift+enter快捷键输出;然后下拉填充公式即可。
· 四川省
1
回复
懒人办公
懒人办公

创作者俱乐部成员

厉害
· 中国
回复
 
懒人办公
懒人办公

创作者俱乐部成员

请将你的公式写在评论区
· 贵州省
1
回复