2012-08-07 11 views

Respuesta

16

Sólo se necesita una expresión regular simple:

z_new = gsub("\\.[0-9]*$", "", z) 

Algunos comentarios:

  1. El primer argumento en gsub es el patrón que estamos buscando. El segundo argumento es con qué reemplazarlo (en este caso, nada).
  2. El carácter $ busca el patrón al final de la cadena
  3. [0-9]* busca 1 o más dígitos. Alternativamente, puede usar \\d* o [[:digit:]]*.
  4. \\. coincide con el punto. Necesitamos escapar del punto final con dos barras.
3

probar este

gsub("\\.[[:digit:]]*$", "", z) 
-1

La mejor manera de hacerlo es con una declaración de reemplazo de expresiones regulares. Cómo lo hace depende del idioma que está utilizando.

Aquí está el patrón de expresión es necesario identificar los números se arrastran

(. \ D {1,2})^

Y simplemente debe sustituir a los partidos con ""

Cuestiones relacionadas