Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 尝试在单个字符串上使用sub(),但它只更改所需的第一个字符,而不是字符串上出现的所有字符_R_String - Fatal编程技术网

R 尝试在单个字符串上使用sub(),但它只更改所需的第一个字符,而不是字符串上出现的所有字符

R 尝试在单个字符串上使用sub(),但它只更改所需的第一个字符,而不是字符串上出现的所有字符,r,string,R,String,我对这门语言相当陌生,决定给我一点锻炼。我试图改变这个表达式中的逗号 0,869*(100/3)+0,791*(100/3)+0,757*(100/3)+0,723*0+0,544*0+0,237*100 对于圆点 但是当我尝试使用sub()函数时,它只更改第一个逗号,而不更改其他逗号。有人能给我解释一下为什么会这样吗?抱歉,如果这是一个简单的问题,我试图搜索,但什么也没找到。代码如下: sub(",",".","0,869*(100/3)+0

我对这门语言相当陌生,决定给我一点锻炼。我试图改变这个表达式中的逗号

0,869*(100/3)+0,791*(100/3)+0,757*(100/3)+0,723*0+0,544*0+0,237*100
对于圆点

但是当我尝试使用sub()函数时,它只更改第一个逗号,而不更改其他逗号。有人能给我解释一下为什么会这样吗?抱歉,如果这是一个简单的问题,我试图搜索,但什么也没找到。代码如下:

sub(",",".","0,869*(100/3)+0,791*(100/3)+0,757*(100/3)+0,723*0+0,544*0+0,237*100")

如果您在文档中查找sub,它会说它只替换第一个实例-在stringr:)中使用
gsub
str\u replace\u all


string尝试
gsub
而不是
sub
。从
?sub
-“sub和gsub分别执行第一个匹配项和所有匹配项的替换。”请提供简单示例。
string <- "0,869*(100/3)+0,791*(100/3)+0,757*(100/3)+0,723*0+0,544*0+0,237*100"

sub(",",".",string)
[1] "0.869*(100/3)+0,791*(100/3)+0,757*(100/3)+0,723*0+0,544*0+0,237*100"

gsub(",",".",string)
[1] "0.869*(100/3)+0.791*(100/3)+0.757*(100/3)+0.723*0+0.544*0+0.237*100"

stringr::str_replace_all(string, ",",".")
[1] "0.869*(100/3)+0.791*(100/3)+0.757*(100/3)+0.723*0+0.544*0+0.237*100"