我是Java的新手。 假设我有一个联系电话和前缀字符串数组。
if (contactNumber.startsWith(prefix)) {
contactNumberPrefix = prefix
contactNumberNumber = contactNumber.substring(lineNumberPrefix.length);
}
所以逻辑是我需要遍历前缀和
{{1}}
如何最好地通过lodash或javascript实现此目标?
答案 0 :(得分:0)
您可以利用Array#some
遍历可用的前缀。如果任何一个匹配项是true
,它将返回true
。参见下面的演示:
let contactNumber = "0204221246890";
let prefixes = ["027", "020", "021", "022", "028", "029", "0204", "03", "04", "06", "07", "09"];
if (prefixes.some(prefix => contactNumber.startsWith(prefix))) {
console.log('matches');
}
编辑1 :
如果需要返回匹配的前缀,最好使用Array#find
。它返回数组中的第一个匹配项。
let prefix = prefixes.find(prefix => contactNumber.startsWith(prefix));
return [contactNumber, prefix];
这会将匹配的前缀和联系电话返回给呼叫者,您可以对其进行销毁。