Haga coincidir una expresión regular que comienza al principio ^
o después de un espacio [[:space:]]
y es seguida por un carácter alfabético [[:alpha:]]
. A nivel mundial (la g en gsub) reemplazar todos estos hechos con el inicio o en el espacio y la versión en mayúsculas del carácter alfabético emparejado emparejado, \\1\\U\\2
. Esto tiene que hacerse con la coincidencia de expresiones regulares de estilo perl.
gsub("(^|[[:space:]])([[:alpha:]])", "\\1\\U\\2", name, perl=TRUE)
# [1] "Zip Code" "State" "Final Count"
En un poco más de detalle para el argumento de reemplazo gsub()
, \\1
dice 'usa la parte de hacer x
coincidir la primera sub-expresión', es decir, la parte de hacer x
coincidir (^|[[:spacde:]])
. Del mismo modo, \\2
dice usar la parte de x
emparejar la segunda subexpresión ([[:alpha:]])
. La \\U
sintaxis se habilita usando perl=TRUE
, y significa hacer que el siguiente carácter sea mayúscula. Entonces, para "Código postal", \\1
es "Código postal", \\2
es "código", \\U\\2
es "Código" y\\1\\U\\2
es "Código postal".
La ?regexp
página es útil para comprender expresiones regulares, ?gsub
para armar cosas.