Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.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 从每个字符串的末尾删除特定字符_R - Fatal编程技术网

R 从每个字符串的末尾删除特定字符

R 从每个字符串的末尾删除特定字符,r,R,如何从数据末尾删除“/”。假设这是我的数据 #input ID page 1 www.example.com/, ww.example.com/flight, www.example.com/flight/ 2 www.example.com/, ww.example.com/flight 我希望从那些最后一个字符中删除“/”,我的输出将是这样的 #output ID page 1 www.example.com, ww.example.com/fl

如何从数据末尾删除“/”。假设这是我的数据

#input 
ID    page
 1    www.example.com/, ww.example.com/flight, www.example.com/flight/
 2    www.example.com/, ww.example.com/flight
我希望从那些最后一个字符中删除“/”,我的输出将是这样的

 #output 
 ID    page
 1    www.example.com, ww.example.com/flight, www.example.com/flight
 2    www.example.com, ww.example.com/flight

我们可以使用
gsub
,而无需周围环境。。在这里,我们删除字符串(
$
)末尾的
/
)或
,并将其替换为
。在随后的
子部分
中,我们删除了末尾的

df1$page <- sub(",$", "", gsub("/($|,)", ",", df1$page))

df1$page
#[1] "www.example.com, ww.example.com/flight, www.example.com/flight" 
#[2] "www.example.com, ww.example.com/flight"         
一种选择:

gsub("/(?=,|$)", "", as.character(df$page), perl = TRUE)
#[1] "www.example.com, ww.example.com/flight, www.example.com/flight"
#[2] "www.example.com, ww.example.com/flight"
这将检查
/
后面是否跟有逗号
或字符串
$
的结尾,如果找到了逗号,则
/
将替换为
,即将其删除。因为这是一个查找,所以我们使用
perl=TRUE

其他选择(效率较低):


也许
gsub(“/(?=,|$)”,“”,as.character(df$page),perl=TRUE)
也可以看看
urltools
包。它有一些处理URL的强大功能
gsub("/(?=,|$)", "", as.character(df$page), perl = TRUE)
#[1] "www.example.com, ww.example.com/flight, www.example.com/flight"
#[2] "www.example.com, ww.example.com/flight"
sapply(strsplit(as.character(df$page), ", ", fixed = TRUE), function(x) toString(sub("/$", "", x)))
#[1] "www.example.com, ww.example.com/flight, www.example.com/flight"
#[2] "www.example.com, ww.example.com/flight"