Question

Je travaille sur un wiki bot pour le wiki de mes communautés qui utilise le framework DotNetWikiBot; il s’agit de trouver un mot qui est généralement une faute de frappe (tel que "capacité") et les remplace par la correction (telle que "capacité").

Ceci fonctionne tel quel est codé:

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

Toutefois, cela remplacera " Abilty " avec " capacité " ce qui va bien sûr poser problème, mais je ne peux pas comprendre comment conserver la casse du mot remplacé (si Abilty devient Ability) à moins que le remplacement de la typo ne soit censé être capitalisé, quel que soit le remplacement: januray to January

Était-ce utile?

La solution

Je pense que vous ferez mieux d'utiliser des expressions régulières à partir de l'espace de noms System.Text.RegularExpressions.

Regex.Replace (str, "[A]", "Z"); ou une variante de celui-ci. Les expressions régulières sont puissantes.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top