有人可以帮我正则表达。我真的很挣扎。
基本上我想编写一个正则表达式来将字符串分成两个子字符串。
例如,在示例中,我想将完整字符串分隔为"comp99810_c0_seq1" and "|m.8409"
。
test <- "comp99810_c0_seq1|m.8409"
c1 <- sub("([A-Za-z1-9])(\\|)(m.\\d+)", "\\1", test)
c2 <- sub("([A-Za-z1-9])(\\|)(m.\\d+)", "\\2\\3", test)
我能够让c1工作而不是c2。有人可以帮帮我....
由于 众议员
答案 0 :(得分:2)
尝试使用您当前使用的语言中的类似split("|")
函数。
但是,请将[A-Za-z1-9]
更改为\\w+
,这对您有用。
目前你的正则表达式只意味着一个字符。 \\w+
表示a-zA-Z
,0-9
,_
答案 1 :(得分:0)
如果您不想拆分“\ |”,问题是第一组缺少重复字符。即([A-Za-z1-9])+或([A-Za-z1-9])*。因为现在它只匹配该集合中的单个字符,然后尝试查找管道。