我想拆分 Red
和 red
如何使拆分不区分大小写?
const str = "my Red balloon"
const searchTxt = "red"
const strArr = str.split(searchTxt);
我已经尝试过const strArr = str.split(/searchTxt/gi);
最佳答案
使用 RegExp构造函数 将所需的标志作为第二个参数RegExp(expression, flags)
重要提示:将任意字符串(如来自用户输入)传递给 RegExp 构造函数时 - 始终确保
转义正则表达式特殊字符 RegExp
可能会混淆为正则表达式 代币 如.
(任何字符)?
(一个或多个)等,等等。请参阅下面的两个链接演示。
const str = "my Red balloon"
const searchTxt = "red"
const regEscape = v => v.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&');
const strArr = str.split(new RegExp(regEscape(searchTxt), "ig"));
console.log(strArr)
关于javascript 如何使 split() 不区分大小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67227386/