【问题标题】:Reverse special charcters with Panda in python在python中用熊猫反转特殊字符
【发布时间】:2021-02-23 12:36:09
【问题描述】:

假设我在名为 A 的列中有这样的字符串:

A00001-BL - A00002-BL
D00002-BL-D00003-BL
FA0003 -BL- FA0005-BL

现在我只想将下面的数字颠倒过来,用 lambda 和 python 中的 panda 或任何其他方式将其放在 B 列中:

A00002-BL - A00001-BL
D00003-BL-D00002-BL 
FA0005 -BL- FA0003-BL

我有超过 300000 行不同的字符,我必须对所有这些行应用这种还原。

【问题讨论】:

    标签: python pandas list python-2.7 lambda


    【解决方案1】:

    你可以使用str.replace:

    df.A.str.replace(r'^(\w+\s*-\s*\w+)(\s*-\s*)(.*)$',r'\3\2\1')
    

    输出:

    0    A00002-BL - A00001-BL
    1      D00003-BL-D00002-BL
    2    FA0005-BL- FA0003 -BL
    Name: A, dtype: object
    

    有关第一个正则表达式字符串的说明,请参阅regex101。第二个正则表达式字符串只是意味着您颠倒了前者中的三个捕获组。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-01
      • 2019-08-13
      • 2018-02-02
      • 1970-01-01
      • 2019-10-01
      相关资源
      最近更新 更多