Quizás no entendí bien tu problema, debido a la simplicidad de tu ejemplo. A mi entender, tiene una serie de instrucciones almacenadas en vectores de caracteres, y esas instrucciones están muy cerca de estar formateadas correctamente, excepto que le gustaría convertir el miembro correcto en numérico.
Si mi entendimiento es correcto, me gustaría proponer un enfoque ligeramente diferente, que no se basa en dividir su cadena original, sino que evalúa directamente su instrucción (con una pequeña mejora).
original_string <- "variable_name=\"10\"" # Your original instruction, but with an actual numeric on the right, stored as character.
library(magrittr) # Or library(tidyverse), but it seems a bit overkilled if the point is just to import pipe-stream operator
eval(parse(text=paste(eval(original_string), "%>% as.numeric")))
print(variable_name)
#[1] 10
Básicamente, lo que estamos haciendo es "mejorar" su instrucción variable_name="10"para que se convierta en variable_name="10" %>% as.numeric, lo que es un equivalente variable_name=as.numeric("10")a la magrittrsintaxis de flujo continuo. Luego evaluamos esta expresión dentro del entorno actual.
Espero que ayude a alguien que paseara por aquí 8 años después ;-)