Hola,

Una forma de hacerlo es así...
Pensando en que el separador de cada palabra es el "." y que la provincia
es la cuarta palabra.


> cad.ena <- c(
+ 'm.1.p.Álava'
+ ,'m.1.p.Albacete'
+ ,'m.2.p.Alicante'
+ ,'m.1.p.Almería'
+ ,'m.3.p.Asturias'
+ ,'m.1.p.Ávila'
+ ,'m.1.p.Badajoz'
+ ,'m.1.p.Baleares (Illes)'
+ ,'m.1.p.Barcelona'
+ ,'m.1.p.Burgos'
+ ,'m.1.p.Cáceres'
+ ,'m.1.p.Cádiz'
+ )
>
> library(stringr)
> prov.incia <- word(cad.ena, 4, sep=fixed("."))
> prov.incia
 [1] "Álava"            "Albacete"         "Alicante"
 [4] "Almería"          "Asturias"         "Ávila"
 [7] "Badajoz"          "Baleares (Illes)" "Barcelona"
[10] "Burgos"           "Cáceres"          "Cádiz"



Saludos,
Carlos Ortega
www.qualityexcellence.es


El 15 de julio de 2013 20:46, Jose Luis Cañadas
<canadasreche@gmail.com>escribió:

> Hola a todos.
>
> Soy un poco torpe manejando cadenas de texto, así que os pido ayuda.
> Tengo un vector de texto de este tipo
> datos$tipo
>   [1] m.1.p.Álava m.1.p.Albacete
>   [3] m.2.p.Alicante m.1.p.Almería
>   [5] m.3.p.Asturias m.1.p.Ávila
>   [7] m.1.p.Badajoz                m.1.p.Baleares (Illes)
>   [9] m.1.p.Barcelona m.1.p.Burgos
>  [11] m.1.p.Cáceres                m.1.p.Cádiz
>
> Y quiero extraer el nombre de la provincia. Estoy intentándolo con stringr
> y usando expresiones regulares, pero no doy con la tecla. Seguro que es
> fácil
>
> He probado algo como
>
> require(stringr)
> str_extract(datos$tipo,"[p][A-**Za-z]+")
>
> Pero me devuelve todo NA..
>
> ¿Alguna idea o sitio dónde pueda aprender algo sobre expresiones regulares?
>
> Saludos
>
> ______________________________**_________________
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/**listinfo/r-help-es<https://stat.ethz.ch/mailman/listinfo/r-help-es>
>



-- 
Saludos,
Carlos Ortega
www.qualityexcellence.es

	[[alternative HTML version deleted]]

