在項目中遇到了需要使用字符串進行正則匹配,同時還要忽略大小寫
可以按照以下方法:
1 先使用new RegExp(newVal, ‘i’)生成需要匹配的規則,其中 ‘i’ 表示忽略大小寫
2 再對相應的字符串進行匹配
string.search(new RegExp(newVal, 'i')) !== -1
這樣的寫法在匹配正則表達式的特殊符號是會報錯,因此需要改成下面的形式,將特殊符號進行轉義處理
string.search(new RegExp(newVal.trim().replace(/([,.+?:()*\[\]^$|{}\\-])/g, '\\$1'), 'i')) !== -1