2 votes

Utilisation de gsub pour remplacer une chaîne de caractères et les n mots suivants

J'essaie de nettoyer les textes des protocoles parlementaires. Comme les données proviennent de fichiers pdf, elles comprennent des pieds de page avec la période législative et des références de pages comme celles-ci : "18ème période législative page x de N". Comme les 600 protocoles diffèrent par leur nombre total de pages, je ne peux pas faire correspondre des expressions exactes. Au lieu de cela, j'aimerais utiliser la fonction gsub pour supprimer le début du pied de page et les n mots suivants.

J'ai travaillé avec un certain nombre de solutions proposées pour d'autres questions qui allaient dans le même sens, mais je n'ai pas réussi à le faire fonctionner.

string <- "this is the first page. 18th legislative period page 1 of 44 
this is the second page. 18th legislative period page 2 of 44 and this is 
the third page"

gsub("18th legislative period page", "", string)

Je m'attends à ce que la chaîne de caractères soit la suivante

"this is the first page. this is the second page. and this is the third page."   

Edit : Merci beaucoup pour votre temps et votre patience !

2voto

nate.edwinton Points 779

Vous pourriez utiliser

gsub("18th legislative period page \\d+ of \\d+", "", string)
# or without the newline symbol '\n'
gsub('\\s{2,}', ' ', gsub("18th legislative period page \\d+ of \\d+", "", string))

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X