node-sensitive-word-filtering
Advanced tools
+1
-1
| { | ||
| "name": "node-sensitive-word-filtering", | ||
| "version": "1.0.1", | ||
| "version": "1.0.2", | ||
| "description": "A Node.js library for filtering sensitive words using a prefix tree (Trie).", | ||
@@ -5,0 +5,0 @@ "main": "sensitive-word-trie.js", |
@@ -77,10 +77,9 @@ class TrieNode { | ||
| let i = 0; | ||
| while (i < text.length) { | ||
| const characters = Array.from(text); | ||
| while (i < characters.length) { | ||
| let node = this.root; | ||
| let j = i; | ||
| let matchLength = 0; | ||
| while (j < text.length && node.children[text[j]]) { | ||
| node = node.children[text[j]]; | ||
| while (j < characters.length && node.children[characters[j]]) { | ||
| node = node.children[characters[j]]; | ||
| j++; | ||
@@ -91,3 +90,2 @@ if (node.isEndOfWord) { | ||
| } | ||
| if (matchLength > 0) { | ||
@@ -97,7 +95,6 @@ result += '*'.repeat(matchLength); | ||
| } else { | ||
| result += text[i]; | ||
| result += characters[i]; | ||
| i++; | ||
| } | ||
| } | ||
| return result; | ||
@@ -104,0 +101,0 @@ } |
3987
1.81%88
1.15%