Nettoyage de texte RTF
J'aimerais prendre quelques RTF entrée et le nettoyer pour supprimer tous les format RTF à l'exception de \ul \b \i pour les coller dans Word avec une forme mineure de l'information.
La commande utilisée pour coller dans Word sera quelque chose comme:
oWord.ActiveDocument.ActiveWindow.Sélection.PasteAndFormat(0) (avec un peu de texte RTF déjà dans le presse-papiers)
{\rtf1\ansi\deff0{\fonttbl{\f0\fnil\fcharset0 Courier New;}}
{\colortbl ;\red255\green255\blue140;}
\viewkind4\uc1\pard\highlight1\lang3084\f0\fs18 The company is a global leader in responsible tourism and was \ul the first major hotel chain in North America\ulnone to embrace environmental stewardship within its daily operations\highlight0\par
Avez-vous une idée sur comment je peux nettoyer la RTF en toute sécurité avec certaines expressions régulières ou quelque chose? Je suis à l'aide de VB.NET pour le traitement, mais tout .NET de la langue de l'échantillon ne.
OriginalL'auteur Vincent | 2008-08-21
Vous devez vous connecter pour publier un commentaire.
Je voudrais utiliser un caché RichTextBox, définissez le format Rtf membre, puis de récupérer le Texte de membre pour le lavage du RTF dans un bien pris en charge. Alors je voudrais utiliser manuellement injecter de la mise en forme souhaitée par la suite.
OriginalL'auteur Nick
Je ferais quelque chose comme ce qui suit:
OriginalL'auteur Martin
Vous pouvez enlever les balises avec des expressions régulières. Assurez-vous juste que vos expressions de ne pas filtrer les balises qui ont été effectivement texte. Si le texte avait "\b" dans le corps du texte, il semblerait que \b dans le texte RTF flux. En d'autres mots, vous match "\b", mais pas "\b".
Vous pourriez probablement prendre un raccourci et de filtrer l'en-tête balises RTF. Rechercher la première occurrence de "\viewkind4" dans l'entrée. Puis à lire pour le premier caractère d'espace. Vous souhaitez supprimer tous les caractères à partir du début du texte jusqu'à et y compris l'espace de caractère. Qui dépouillent les RTF informations d'en-tête (polices, couleurs, etc).
OriginalL'auteur Chris Miller
Regex, il l'habitude d'analyser absolument tout correctement (tableaux par exemple), mais fait le travail dans la plupart des cas.
Magique =)
OriginalL'auteur Toby Holland