在 python 中用 Panda 反转特殊字符

Reverse special charcters with Panda in python

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

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

现在我只想反转下面的数字并将其放在 B 列中,其中 lambda 和熊猫 python 或任何其他方式:

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

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

您可以使用 str.replace:

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

输出:

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

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