J'ai besoin de préserver les mots avec des caractères alphanumériques, des hypens et des apostrophes. J'ai tout sauf des apostrophes à l'heure actuelle. L'apostrophe dans des mots comme n'avait pas, et ne pas être dépouillé à l'aide de ce code: J'ai besoin de préserver des apostrophes, mais seulement quand ils sont dans un mot . A déclaré un peu différemment, les apostrophes à la fin d'un mot doivent être coupés, et aussi au début (quand il s'agit d'une citation unique); mais Apostrophes dans em> un mot - en d'autres termes, ceux qui indiquent des contractions, telles que "n'avaient pas" - devraient être préservées. P> Que dois-je ajouter à la Regex ou comment dois-je modifier cela pour accomplir cela? P> p>
3 Réponses :
Je suis un peu confus par votre nom de variable sublines code> (implique des lignes de texte) en cours de création par Split () code> - Paramètre Split Split Split sur WhitSpace. Les sublines contiennent donc-elles des mots ou des lignes? Je pense que malgré le nom, il contient des mots, vous pouvez donc modifier votre regex à: [^a-zA-Z0-9 '-]
Bon point sur la confusion de dénomination. Je vais le changer. Merci1
mise à jour em> strong> - après avoir réaffecté la question, il est devenu apparent voir https://regex101.com/r/fktq8v/1 p> C # code exemple: p> sortie: p>
Il n'y a pas besoin de tous les scissions et de couper quand tout
Peut être fait à l'aide d'une seule regex qui correspond exactement à ce qui est nécessaire. (?: (?! [^ A-ZA-Z0-9 '-] + | << p>
Les éléments suivants peuvent supprimer Apostrophe comme vous avez besoin -
System.Text.RegularExpressions.Regex.Replace("'this isn't a' test'", "'(?=(\\s+|$))|(?<=(\\s+|^))'", "")
Pouvez-vous s'il vous plaît fournir l'entrée et la sortie attendues
Ceci B> aide?
@Viveknuna: Exemples d'entrée attendus: Sortie attendue de Shannons n'a pas Shannons: N'a pas Shannons