https://github.com/zidoshare/matcher.js
:school: 字符串匹配算法相关js实现
https://github.com/zidoshare/matcher.js
Last synced: about 1 year ago
JSON representation
:school: 字符串匹配算法相关js实现
- Host: GitHub
- URL: https://github.com/zidoshare/matcher.js
- Owner: zidoshare
- License: mit
- Created: 2018-03-09T10:12:17.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-03-23T02:20:14.000Z (about 8 years ago)
- Last Synced: 2025-04-24T00:39:01.680Z (about 1 year ago)
- Language: JavaScript
- Homepage:
- Size: 24.4 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# 字符串匹配算法相关js实现
* ac算法
* kmp算法
# 使用
安装 `npm install zitcher`
```javascript
var zitcher = require('zitcher')
//create by pattern
//如果传入字符串,会自动采用kmp算法,获取kmp对象,此对象重复使用
var finder = zitcher('abc')
var result = finder.findFirst('hcniufvfabcfgrthrt') //返回number
finder.findAll('vdrfstfbdfsdabcagreghrthbng') //array of some results,shape like finder.findFirst() {mode:string,start:number}
//如果是传入数组,会采用ac自动机算法
var finder2 = zitcher(['abc','def'])
result = finder2.findFirst('ouabcpjeuirfddef')
console.log(result.mode,result.start)
finder2.findAll('aldbabcladwnedefdninjabc') //array of some results,shape like finder.findFirst() {mode:string,start:number}
```
## api
findFirst() //查找第一次出现的子串
findAll() // 查找所有出现的子串,返回数组,每个数据与findFirst格式相同
# 测试
> npm test
# 构建
打包压缩
> npm run build