2、在扫描原文本时,如果遇到关键字的首个文字,忽略其后的特殊字符,直到下一个有意
义的文字为止,当然这里需要在定义关键字列表时指定哪些才需要这样扫描,并不
是所有关键字都采用这种方式;
“
”
“
例如有关键字 你好 经常会被人输入成 你
x
”
“
好 或者 你
xxxxx
”
好 ,那么在关键
“
字列表里就需要定义成 你
* ”
好 ,在匹配关键字时,如果遇到星号就忽略原文本下
一个为特殊的字符。
3、遇到谐音和拆字时,没什么好办法了,只好将这些谐音词和拆分词也加入到关键字列表。
4
、不用正则表达式或者
String.IndexOf 方法,可以将所有关键字的首字相同的组成一个
一个小组,然后在将首字放到一个散列表(
HashTable/Dictionary),在扫描原
文本时先在散列表里扫描,如果碰到了首字再扫描同组的关键字,这样简单处理一
下效率可以提高很多。