1

次の文字列のリストがあります。

name <- c("hsa-miR-555p","hsa-miR-519b-3p","hsa-let-7a")

私がやりたいことは、上記の文字列のそれぞれについて、2 番目の区切り文字 (-) の後のテキストを「zzz」に置き換えることです。収量:

hsa-miR-zzz
hsa-miR-zzz
hsa-let-zzz

それを行う方法は何ですか?

4

2 に答える 2

2

おそらく次のようなものです:

> gsub("([A-Za-z]+-)([A-Za-z]+-)(.*)", "\\1\\2zzz", name)
[1] "hsa-miR-zzz" "hsa-miR-zzz" "hsa-let-zzz"

実際には、式が実際にどの程度「正規」であるかに応じて、これにアプローチする方法がいくつかあります。たとえば、それらはすべて「hsa-」で始まりますか? 「中間」グループのオプションは何ですか? 3 つ以上のダッシュがある可能性がありますか?

于 2013-07-10T07:13:25.147 に答える