小编And*_*lgo的帖子

正则表达式查找每两个逗号,使用 dplyr 将行与列分开

我有这样的字符串:

71,72,80,81,102,100
Run Code Online (Sandbox Code Playgroud)

我想分隔每 2 个“数字”,所以:

71,72
80,81
102,100
Run Code Online (Sandbox Code Playgroud)

我写了这个正则表达式:

(([0-9]{1,4}),([0-9]{1,4}))
Run Code Online (Sandbox Code Playgroud)

其中突出显示了我需要的组,除了“,”之间的逗号

在我的代码中我使用 dplyr

例子:

df_example <- tibble(Lotes= "LOT1,LOT2,LOT3",NoModuloPlastico = "71,72,80,81,102,100")

df_result_example <- df_example %>%
separate_rows(c(Lotes),sep=",") %>%
separate_rows(c(NoModuloPlastico),sep="(([0-9]{1,3}),([0-9]{1,3}))")
Run Code Online (Sandbox Code Playgroud)

这意味着我真正需要的是用正则表达式突出显示每 2 个逗号,但我找不到方法。

我无法根据我的需要调整这些链接:

https://bedigit.com/blog/regex-how-to-match-everything-except-a-particular-pattern/

https://blog.codinghorror.com/ exclude-matches-with-regular-expressions/

我得到的:

洛特 无模塑料
批次 1 “”
批次 1 “,”
批次 1 “,”
批次 1 “”
批次2 “”
批次2 “,”
批次2 “,”
批次2 “”
LOT3 “”
LOT3 “,”
LOT3 “,”
LOT3 “”

我想要的是:

洛特 无模塑料
批次 1 71,72
批次2 80,81
LOT3 102,100

regex r separator dataframe dplyr

2
推荐指数
2
解决办法
75
查看次数

标签 统计

dataframe ×1

dplyr ×1

r ×1

regex ×1

separator ×1