我正在使用grep
做一个不区分大小写的搜索,但问题是我得到所有包含该模式的值,而不仅仅是完全匹配,但是如果我使用fixed=TRUE
会使ignore.case=TRUE
参数无效。如何进行不区分大小写的搜索?
g = c("PLD3","PLD2","PLD2ABC","DTPLD2a")
r = "pLd2"
grep(r,g,ignore.case=TRUE,value=TRUE)
>[1] "PLD2" "PLD2ABC" "DTPLD2a"
grep(r,g,ignore.case=TRUE,value=TRUE,fixed=TRUE)
>character(0)
EDIT
r
是用户输入,所以基本上可以为从30,000个基因的列表任何东西,也可以是所有小写,所有大写,或它们的混合物都是。 并以我列表g
的元件可以是大写,小写或它们的混合物(它是15000左右的基因列表)
也许只是将两者都转换为小写,并检查它是否相等? '克[tolower的(G)== tolower的(R)]'。 – lukeA
完美地工作,谢谢 – Bea