我正在为使用DotNetWikiBot框架的社区wiki开发一个wiki机器人;它是找到一个通常是拼写错误的单词(例如“abilty”)并用纠正代替它们(例如“能力”)。

这是按原样编码:

p.text = p.text.Replace(@"\b" + typoArray[x, 0] + @"\b", typoArray[x, 1]);

然而,这将取代“Abilty”。具有“能力”的这当然会导致问题,但我无法弄清楚如何保留被替换词的情况(所以Abilty成为能力),除非错字替换意味着大写,无论它取代什么:januray到1月

有帮助吗?

解决方案

我认为您可以使用System.Text.RegularExpressions命名空间中的正则表达式做得更好。

Regex.Replace(str," [A]"," Z");或者它的一些变体。正则表达式很强大。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top