我有一个R字符串,格式
s = `"[some letters and numbers]_[a number]_[more numbers, letters, punctuation, etc, anything]"`
Run Code Online (Sandbox Code Playgroud)
我只是想要一种检查是否s包含"_2"在第一个位置的方法.换句话说,在第一个_符号之后,单个数字是"2"吗?我如何在R中执行此操作?
我假设我需要一些复杂的正则表达式?
例子:
39820432_2_349802j_32hfh = TRUE
Run Code Online (Sandbox Code Playgroud)
43lda821_9_428fj_2f = FALSE(注意那里有一个_2,但没有在正确的位置)
Jul*_*ano 66
> grepl("^[^_]+_1",s)
[1] FALSE
> grepl("^[^_]+_2",s)
[1] TRUE
Run Code Online (Sandbox Code Playgroud)
基本上,在开头寻找一切除了_,然后是_2.
+1给@Ananda_Mahto建议grepl代替grep.
tuc*_*son 30
我认为值得回答一般问题"R - 测试字符串是否包含字符串".
为此,请使用grep函数.
# example:
> if(length(grep("ab","aacd"))>0) print("found") else print("Not found")
[1] "Not found"
> if(length(grep("ab","abcd"))>0) print("found") else print("Not found")
[1] "found"
Run Code Online (Sandbox Code Playgroud)