[R] Extracting numeric part from a string

Bert Gunter bgunter.4567 at gmail.com
Thu Aug 3 02:59:15 CEST 2017


... Or if you just want to stick with basic regex's without extra packages:

> x <- "\"cm_ffm\":\"563.77\""
> sub("[^[:digit:]]*([[:digit:]]*.?[[:digit:]]*).*","\\1",x)

[1] "563.77"

Cheers,
Bert



On Wed, Aug 2, 2017 at 5:16 PM, Ismail SEZEN <sezenismail at gmail.com> wrote:
>
>> On 3 Aug 2017, at 02:59, Christofer Bogaso <bogaso.christofer at gmail.com> wrote:
>>
>> Hi again,
>>
>> I am struggling to extract the number part from below string :
>>
>> "\"cm_ffm\":\"563.77\""
>>
>> Basically, I need to extract 563.77 from above. The underlying number
>> can be a whole number, and there could be comma separator as well.
>>
>> So far I tried below :
>>
>>> library(stringr)
>>
>>> str_extract("\"cm_ffm\":\"563.77\"", "[[:digit:]]+")
>>
>> [1] "563"
>>
>>>
>>
>> However, above code is only extracting the integer part.
>>
>> Could you please help how to achieve that. Thanks,
>
>
> library(readr)
> parse_number('"cm_ffm":"563.77”')
>
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list