如何在 R 中仅对具有字母数字字符的字符串进行正则表达式匹配和替换?
How to do regular expression match and replacement in R for only string which has alphanumeric characters?
我有一个数据集,它有像“00MOC00281”这样的值,也有像“000001”这样的值。我只想从“00MOC00281”中删除前导零,它应该变成 "MOC00281" 而“000001”保持原样。
我正尝试在 R 中使用 gsub,如下所示:
Command: gsub("^0{2}(*[A-Z])", "", "00MOC0012B")
Output : "OC0012B"
感谢任何帮助。
我们可以使用积极的前瞻。此正则表达式仅匹配后跟 "M" 的前导零。由于环视是零长度断言,"M" 不是匹配的一部分:
sub("^0+(?=[A-Z])", "", c("00MOC0012B", "000001"), perl = TRUE)
# [1] "MOC0012B" "000001"
我有一个数据集,它有像“00MOC00281”这样的值,也有像“000001”这样的值。我只想从“00MOC00281”中删除前导零,它应该变成 "MOC00281" 而“000001”保持原样。
我正尝试在 R 中使用 gsub,如下所示:
Command: gsub("^0{2}(*[A-Z])", "", "00MOC0012B")
Output : "OC0012B"
感谢任何帮助。
我们可以使用积极的前瞻。此正则表达式仅匹配后跟 "M" 的前导零。由于环视是零长度断言,"M" 不是匹配的一部分:
sub("^0+(?=[A-Z])", "", c("00MOC0012B", "000001"), perl = TRUE)
# [1] "MOC0012B" "000001"