Overview:
I'm writing a function to compare to music artist strings, but come in different formats. Would would be a suggested approach?
Example Strings (Both are from the same song, just formatted differently):
// Eli & Fur & Brothertiger
// Brothertiger, Eli & Fur
Question:
What would be the suggested approach to compare these strings that I could match both artists "Eli & Fur & Brothertiger" and "Brothertiger, Eli & Fur"?
Possible Options:
- Use
string.split(',')onsongTitle, then for loop over each string - Use
string.split('&')onsongTitle, but then that gets messed with with an artist namesuch as "Eli & Fur"with a"&"in it.
CodePudding user response:
I'd split by either & or a comma.
const toArr = str => str.split(/ *(?:&|,) */);
console.log(toArr('Eli & Fur & Brothertiger'));
console.log(toArr('Brothertiger, Eli & Fur'));
Then check that the lengths are the same and that every element of one array exists in the other.
