如何从此输入中提取子字符串:
input = c("Inspecting sequence ID NM_000775",
"Inspecting sequence ID NM_001014975",
"Inspecting sequence ID NM_001080484")
得到:
output= c("NM_000775", "NM_001014975", "NM_001080484")
答案 0 :(得分:2)
你可以尝试
Response.AppendHeader("content-disposition", "?stop=true&" + "attachment; filename=" + fichierExport.NomFichier );
或者,如果在最后一个子字符串(要提取)之前正好有3个单词后跟空格
sub('.*([A-Z]{2}\\_\\d+)$', '\\1', input)
#[1] "NM_000775" "NM_001014975" "NM_001080484"
答案 1 :(得分:2)
试试这个:
gsub('.*\\s','',input)
答案 2 :(得分:1)
您可以使用stringr
包:
library(stringr)
unlist(str_extract_all(input, "NM_\\d+"))
#[1] "NM_000775" "NM_001014975" "NM_001080484"
正如akrun所提到的,你也可以通过简单地使用unlist()
来避免str_extract()
:
str_extract(input, "NM_\\d+")
#[1] "NM_000775" "NM_001014975" "NM_001080484"
使用的正则表达式NM_\\d+
将匹配以NM_
开头,后跟一个或多个数字的任何内容。
根据NM_
是否特定于示例或代表您的实际问题,您可能希望将正则表达式概括为[A-Z]{2}_\\d+
,或者如akrun所述,\\w+_\\d+
。
答案 3 :(得分:1)
sub("Inspecting sequence ID\\s+","",input)
[1] "NM_000775" "NM_001014975" "NM_001080484"
答案 4 :(得分:0)
假设NM是识别条目的东西,另一种可能性是
gsub(".*\\s*(NM_\\d+)$", "\\1", input)