Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/65.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
子串替换第n个位置R_R - Fatal编程技术网

子串替换第n个位置R

子串替换第n个位置R,r,R,我需要将6,7,8的位置替换为“u”。在子字符串中,我提到了开始和停止位置。它不起作用 > a=c("UHI786KJRH2V", "TYR324FHASJKDG","DHA927NFSYFN34") > substring(a, 6,8) <- "_" > a [1] "UHI78_KJRH2V" "TYR32_FHASJKDG" "DHA92_NFSYFN34" >a=c(“UHI786KJRH2V”、“TYR324FHASJKDG”、“DHA927NFSYFN

我需要将6,7,8的位置替换为“u”。在子字符串中,我提到了开始和停止位置。它不起作用

> a=c("UHI786KJRH2V", "TYR324FHASJKDG","DHA927NFSYFN34")
> substring(a, 6,8) <- "_"
> a
[1] "UHI78_KJRH2V"   "TYR32_FHASJKDG" "DHA92_NFSYFN34"
>a=c(“UHI786KJRH2V”、“TYR324FHASJKDG”、“DHA927NFSYFN34”)
>子串(a,6,8)a
[1] “UHI78_KJRH2V”“TYR32_FHASJKDG”“DHA92_NFSYFN34”

我需要
UHI78\u RH2V TYR32\u ASJKDG DHA92\u SYFN34
使用
sub
,我们可以匹配模式
(?使用
sub
,我们可以匹配文档中的模式
(?):

如果要替换的部分比替换字符串长,则仅替换字符串长度的部分

所以我们可以这样做:

substring(a, 6,8) <- "_@@"
sub("@+", "", a)
[1] "UHI78_RH2V"   "TYR32_ASJKDG" "DHA92_SYFN34"

文件中的子字符串(a,6,8):

如果要替换的部分比替换字符串长,则仅替换字符串长度的部分

所以我们可以这样做:

substring(a, 6,8) <- "_@@"
sub("@+", "", a)
[1] "UHI78_RH2V"   "TYR32_ASJKDG" "DHA92_SYFN34"
substring(a,6,8)1)stru sub1)stru subcar可以避免
nchar()
使用:
paste0(substr(a,1,5),“8”,substring(a,9))
可以避免
nchar()
使用:
paste0(substr(a,1,5),“8”,substring(a,9))
substring(a, 6,8) <- "_@@"
sub("@+", "", a)
[1] "UHI78_RH2V"   "TYR32_ASJKDG" "DHA92_SYFN34"
library(stringr)

str_sub(a, 6, 8) <- "_"
a
## [1] "UHI78_RH2V"   "TYR32_ASJKDG" "DHA92_SYFN34"
sub("(.....)...(.*)", "\\1_\\2", a)
## [1] "UHI78_RH2V"   "TYR32_ASJKDG" "DHA92_SYFN34"
library(dplyr)
library(tidyr)
DF <- data.frame(a)

DF %>% 
  separate(a, into = c("pre", "junk", "post"), sep = c(5, 8)) %>%
  select(-junk) %>% 
  unite(a)
             a
1   UHI78_RH2V
2 TYR32_ASJKDG
3 DHA92_SYFN34