Regex 符号后的grep子字符串

Regex 符号后的grep子字符串,regex,r,Regex,R,我想创建一个新列,其中包含最后一个后面的字符串列ID中的符号。我知道如何使用awk,但不使用R > head(Mapped2) IsomiR ID 1 TCCCGGGTGGTCTAGTGGTTAGGATTCGGCGCT

我想创建一个新列,其中包含最后一个
后面的字符串
ID
中的符号。我知道如何使用awk,但不使用R

> head(Mapped2)
                                              IsomiR                                                               ID
1                  TCCCGGGTGGTCTAGTGGTTAGGATTCGGCGCT                                   URS0000635088;tRNA-Glu-CTC-2-1
2                  TCCCGGGTGGTCTAGTGGTTAGGATTCGGCGCT                                           URS000011CFE8;misc_RNA
3                  TCCCGGGTGGTCTAGTGGTTAGGATTCGGCGCT                                  URS00006A26A3;Homo;sapiens;tRNA
4 TTGCCCTCGGCCGATCGAAAGGGAGTCGGGTTCAGATCCCCGAATCCGGA                    URS00008D20CE;Homo;sapiens;large;subunit;rRNA
5 TTGCCCTCGGCCGATCGAAAGGGAGTCGGGTTCAGATCCCCGAATCCGGA                    URS00008C7E99;Homo;sapiens;large;subunit;rRNA
6 TTGCCCTCGGCCGATCGAAAGGGAGTCGGGTTCAGATCCCCGAATCCGGA URS000075EC78;Homo;sapiens;RNA,;28S;ribosomal;5;(RNA28S5),;rRNA.

一个与非
匹配的模式如何a
之间的字符和字符串的结尾,如下所示:

s <- "6TTGCCCTCGGCCGATCGAAAGGGAGTCGGGTTCAGATCCCCGAATCCGGAURS000075EC78;Homo;sapiens;RNA,;28S;ribosomal;5;(RNA28S5),;rRNA."
gsub(".*;([^;]+)$", "\\1", s)
# [1] "rRNA."

s与非
匹配的模式如何a
之间的字符和字符串的结尾,如下所示:

s <- "6TTGCCCTCGGCCGATCGAAAGGGAGTCGGGTTCAGATCCCCGAATCCGGAURS000075EC78;Homo;sapiens;RNA,;28S;ribosomal;5;(RNA28S5),;rRNA."
gsub(".*;([^;]+)$", "\\1", s)
# [1] "rRNA."

s给定grep使用regex,这里有一个适合我的regex:
/;([^\;]*)\n/g

有关实现,请参阅


不幸的是,我不知道R,但希望这能让你开始使用grep达到这个目的。

鉴于grep使用正则表达式,这里有一个正则表达式适合我:
/;([^\;]*)\n/g

有关实现,请参阅


不幸的是,我不知道R,但希望它能让你开始使用grep达到这个目的。

如果你想捕捉最后出现的
,您可以使用捕获它之前的所有内容(包括)并将其删除,同时只保留剩下的内容,例如

sub(".*;" , "", Mapped2$ID)
# [1] "tRNA-Glu-CTC-2-1" "misc_RNA" "tRNA" "rRNA" "rRNA" "rRNA."          

如果要捕获最后出现的
,您可以使用捕获它之前的所有内容(包括)并将其删除,同时只保留剩下的内容,例如

sub(".*;" , "", Mapped2$ID)
# [1] "tRNA-Glu-CTC-2-1" "misc_RNA" "tRNA" "rRNA" "rRNA" "rRNA."          

sub(“.*”,“”,Mapped2$ID)
?参见
stringr
包——具体地说,
?stringr::str\u locate\u all
sub(“.*”,“”,Mapped2$ID)
?参见
stringr
包——具体地说,
?stringr::stru locate\u all