前端通过第三方库实现敏感词过滤,可以获取敏感词开始为位置

github源址:

https://github.com/pyloque/fastscan

安装第三方库

//安装到当前项目
npm install --save fastscan

在项目中使用

//引入FastScanner 三方库
import FastScanner from fastscan
export default {
	data(){
		return{
			words:["今日头条""微信", "支付宝"],//定义需要过滤的词组
			scanner:null,//存储FastScanner对象
			content:'今日头条小程序终于来了,这是继微信、支付宝、百度后,第四个推出小程序功能的App。猫眼电影率先试水,出现在今日头条。',//需要过滤的文本
			
		}
	},
	mounted(){
		this.initFastScanner()
	},
	methods:{
		//初始化FastScanner对象
		initFastScanner(){
			this.scanner = new FastScanner(this.words) //创建对象,传入需要过滤的词组
			let options = {quick: false, longest: false} //FastScanner配置对象
			/*
				quick 选项表示快速模式,匹配到一个就立即返回
				longest 表示最长模式,同一个位置出现多个词汇(中国、中国人),选择最长的一个(中国人)
				默认匹配出所有的词汇,同一个位置可能会出现多个词汇
			*/
	
	
	
			let offWords = this.scanner.search(this.content)//默认不加配置项
			console.log(offWords ) //默认返回 敏感词位置和敏感词 根据返回的值去修改需求
			/*[ [ 0, '今日头条' ], [ 15, '微信' ], [ 18, '支付宝' ], [ 53, '今日头条' ] ]*/
	
	
	
			let hits = this.scanner.hits(this.content)//默认不加配置项
			console.log(hits)//默认返回 敏感词及其出现的总数 根据返回的值去修改需求
			/*{ '今日头条': 2, '微信': 1, '支付宝': 1 }*/
	
	
	
	
			let offWordsSet = this.scanner.search(this.content,options)//添加配置项
			console.log(offWords ) //默认返回 敏感词位置和敏感词 根据返回的值去修改需求
			/*[ [ 0, '今日头条' ]*/
		}
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值