Search code examples
runicodetext-processingiconvunicode-string

Converting a \u escaped Unicode string to ASCII


After reading all about iconv and Encoding, I am still confused.

I am scraping the source of a web page I have a string that looks like this: 'pretty\u003D\u003Ebig' (displayed in the R console as 'pretty\\\u003D\\\u003Ebig'). I want to convert this to the ASCII string, which should be 'pretty=>big'.

More simply, if I set

x <- 'pretty\\u003D\\u003Ebig'

How do I perform a conversion on x to yield pretty=>big?

Any suggestions?


Solution

  • Use parse, but don't evaluate the results:

    x1 <- 'pretty\\u003D\\u003Ebig'
    x2 <- parse(text = paste0("'", x1, "'"))
    x3 <- x2[[1]]
    x3
    # [1] "pretty=>big"
    is.character(x3)
    # [1] TRUE
    length(x3)
    # [1] 1