敏感字过滤方法

//  str 是用户输入的字符串  filterArray 是敏感字字库
export function commentFilter(str, filterArray = STATIC_WORDS.sen_words) {
  if (str === '') {
    return '文本不能为空';
  }
  if (str.length > 300) {
    return '最多支持300字';
  }
  if (!str.search(/^([a-zA-Z]{1,})$/)) {
    return '本不能是纯数字、纯字母或纯符号';
  }
  if (!str.search(/^\d*$/)) {
    return '文本不能是纯数字、纯字母或纯符号';
  }
  if (
    !str.search(
      /^[!@#$%^&*,.,。??!¥……()“”‘’''"";:;:{}【】\u0020-\u0030\d]*$/
    )
  ) {
    return '文本不能是纯数字、纯字母或纯符号';
  }
  if (filter(str, filterArray)) {
    return '文中包含敏感内容';
  }
  return '';
}
// 敏感字过滤  arr 是敏感字库  str 是用户输入的字符串
export function filter(str, arr) {
  const _ = str.replace(/\s/g, '');// 去除空格
  return Array.isArray(arr)
    ? arr.some((value) => {
        return _.indexOf(value) !== -1;// 查看敏感字是否在用户输入的字符串
      })
    : false;
}

/**
	下面是敏感字字库部分截取  详情可查看我的代码片段
	export default {
  		sen_words: [
    
    		]
    	}	
 **/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值