【问题】如何提取两个字符串中的相同部分?
懒人办公
创作者俱乐部成员
⭐【问题描述】
下图中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设置公式,并将公式写在评论区。
⭐【往期内容】
⭐【素材下载】
https://kdocs.cn/l/cew9VHlvOiaf
WPS函数专家
创作者俱乐部成员
创作者俱乐部成员
创作者俱乐部成员
创作者俱乐部成员