[R] Manipulate strings reordering some elements

Berend Hasselman bhh at xs4all.nl
Tue Mar 13 11:12:24 CET 2012


On 13-03-2012, at 10:42, Igor Sosa Mayor wrote:

> Hi R-Users,
> 
> I want to manipulate some strings in the following way. I have the
> following vector with spanish municipalities:
> 
> municipios<-c("Allande", "Aller", "Amieva", "Avilés", "Belmonte de
> Miranda", 
> "Degaña", "Franco (El)", "Gijón", "Gozón", "Grado", "Grandas de Salime", 
> "Quirós", "Regueras (Las)", "Ribadedeva", "Ribadesella", "Ribera de
> Arriba")
> 
> The problem is: some names have an article ("Franco (El)", "Regueras
> (Las)"). Others don't. I want to do the following conversion:
> 
> "Regueras (Las)"---> "Las Regueras"
> 
> That is: I want to loop through the names, look whether they have a
> postponed article, extract and delete this article and put it in front
> of the rest of the name.
> 
> Any hints? Thanks in advance.


gsub("([^\\s]+)\\s*(\\()(.*)(\\))","\\3 \\1", municipios, perl=TRUE)


Berend



More information about the R-help mailing list