tj
2025-06-05 bba272999cc546f65781bf3d20245a3f819af67f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import FastScanner from 'fastscan'
 
// const words = ['今日头条',
//   '微信', '支付宝',
// ]
// const scanner = new FastScanner(words)
// const content = '今日头条小程序终于来了,这是继微信、支付宝、百度后,第四个推出小程序功能的App。猫眼电影率先试水,出现在今日头条。'
// const offWords = scanner.search(content)
// console.log(offWords)
// const hits = scanner.hits(content)
// console.log(hits)
 
/**
 *
 * @param {string} word
 * @param {string} content
 */
export async function searchForWord(word, content) {
  const scanner = new FastScanner([word])
  const offWords = scanner.search(content)
  return offWords
}
 
/**
 *
 * @param {Array<string>} words
 * @param {string} content
 */
export async function searchForWords(words, content) {
  const scanner = new FastScanner(words)
  const offWords = scanner.search(content)
  return offWords
}
/**
 *
 * @param {string} keyword
 * @param {Array} logs
 */
export function searchLogKeyword(keyword, logs, className = 'strong') {
  console.log('keyword', keyword)
  console.log('logs', logs)
  const _logs = logs.map(log => {
    let msg = log.message
    msg = msg.replace(RegExp(`${keyword}`, 'g'), `<span class="${className}">${keyword}</span>`)
    // eslint-disable-next-line
    log.message = msg
    return log
  })
  return _logs
}