首页 > 解决方案 > 如何通过比较 JavaScript 中的两个字符串从字符串中获取一个值?

问题描述

我认为我的问题(上)太宽泛了。让我在这里试着解释一下……

假设我在一个字符串中有 5 个部门:

"Accounting ResearchDevelopment **InformationTech** System FrontOffice"

我有另一个这样的字符串:

"John is in **InformationTech** department"

该值是InformationTech因为该值在两个字符串中匹配。

如何在InformationTech没有或最小的 for 循环的情况下从这两个字符串中获取一个值?

标签: javascriptjsonstringfunctionparsing

解决方案


假设部门从不包含空格,您可以拆分字符串,然后用于filter()提取重复项:

let string1 = 'Accounting ResearchDevelopment InformationTech System FrontOffice';
let string2 = 'John is in InformationTech department';

let arr1 = string1.split(' ');
let arr2 = string2.split(' ');

let matches = arr1.filter(val => { return arr2.indexOf(val) != -1; });

console.log(matches);

上面还支持多个匹配,并且会返回一个包含共享单词的数组。


推荐阅读