连接不同的字符串时遇到一些问题,我想再次拆分。我正在处理诸如
name="o-n-Butylhydroxylamine1-MethylpropylhydroxylamineAmino-2-butanol"
在这种情况下应在被分割"o-n-Butylhydroxylamine", "1-Methylpropylhydroxylamine"
并"Amino-2-butanol"
有什么想法可以使用strsplit
和/或gsub
正则表达式实现吗?我想使用的规则是,当数字,方括号(“(”)或大写字母后接小写字母)时,我想拆分一个单词。有什么想法怎么做?
您可以使用积极的环视断言来查找(然后分割)字符间的位置,这些位置之间以小写字母开头,再以大写字母,数字或a开头(
。
name <- "o-n-Butylhydroxylamine1-MethylpropylhydroxylamineAmino-2-butanol"
pat <- "(?<=[[:lower:]])(?=[[:upper:][:digit:](])"
strsplit(name, pat, perl=TRUE)
# [[1]]
# [1] "o-n-Butylhydroxylamine" "1-Methylpropylhydroxylamine"
# [3] "Amino-2-butanol"
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句