现在有一些特殊字符 为了便于区分 使用{}包裹;

如上图所示
/**
* arr : 特殊字符数组
* str : 用户选择+输入的文本
* 返回值为Boolean:为true表示所有全部符合规定,false表示存在不符合规定的特殊字符
*/
checkout(arr,str){
const specificCH = arr.map(item => `{${item}}`)
// 找出用户输入的特殊字符
const userStr = str.match(/{(.*?)\}/g)
userStr.forEach(item=>{
if(!specificCH.includes(item)){
return false
}
})
return true
}
调用方法-存在不符合的特殊字符test
this.checkout(['春季','夏季', '秋季', '冬季', '时间', '早上', '中午', '晚上', '日期', '序号', '排序', '啦啦'], '{时间}111{test}{早上}')
发现返回值为true
/**
* arr : 特殊字符数组
* str : 用户选择+输入的文本
* 返回值为Boolean:为true表示所有全部符合规定,false表示存在不符合规定的特殊字符
*/
checkout(arr,str){
const specificCH = arr.map(item => `{${item}}`)
// 找出用户输入的特殊字符
const userStr = str.match(/{(.*?)\}/g)
for(let i =0;i<userStr.length;i++){
const item = userStr[i]
if(!specificCH.includes(item)){
return false
}
}
return true
}
match方法是String构造函数原型上的方法;
forEach方法是for循环遍历的封装;