从一个字符串值

问题描述:

删除特殊字符我有这样一个值:从一个字符串值

" 0.67564;" 

,我想删除;,只有具有双重价值。我怎么能在r?

a <- " 0.67564;" 
gsub(';', '', a) 
[1] " 0.67564" 

为了得到一个数字表示:

as.numeric(gsub(';', '', a)) 
[1] 0.67564 
+0

谢谢,但我geting NA – Kaja

+0

你用什么对象作为'a'? ? – tonytonov

parseFloat()将返回正是你需要

+0

-1你没注意到[tag:r]标签吗? –

+0

嗯......我的不好,但是我的搜索没有这个标签。 – Mikhail

我可能会用什么

as.numeric(gsub("[^[:alnum:]///' ]", "", " 0.67564;")) 

也可以使用regex完成

[^[:alnum:]]优于[^0-9A-Za-z]?regex说“因为他们的解释是语言环境和执行相关,他们最好避免。”和“例如,[[:alnum:]]意味着[0-9A-Za-z],除了后者取决于语言环境和字符编码,而前者是独立的区域设置和字符集