跳至主要内容

[JS30] Day17: Sorting Band Names without Articles

keywords: 省略某些關鍵字後排序, sort

一般情況下陣列的排序可以使用 Array.prototype.sort(callback<a, b>)

const sortedBands = bands.sort((a, b) => (a > b ? 1 : -1));

如果我們希望排序時可以過濾掉某些字元,可以使用正規式:

function strip(word) {
let regex = new RegExp('^(a |the |an )', 'i');
return word.replace(regex, '').trim();
}

// 讓排序的依據是被 strip 過的字元
const sortedBands = bands.sort((a, b) => (strip(a) > strip(b) ? 1 : -1));

[JS] 正則表達式(Regular Expression, regex)

完成作品

Day17: Sorting Band Names without Articles