按最后一个分隔符和大写值拆分列 - python

时间:2023-12-12 阅读:57 评论:0 作者:yc888

我试图用最后一个“-”分隔一列,并后跟所有大写字符串字母。


它不一定是最后一个孤立的分隔符。 但它将是所有大写字符串之前的最后一个。


我可以找到根据第一个/最后一个分隔符分隔的单独问题。 但不能结合使用。


下面,我有一个 df,其 Value 包含各种组合。 我想将 col 分成两个单独的列,其中最后一个“-”和大写字母之前的所有内容。


我的最后一列正确,但第一列不正确。


我会在这里使用 str.extract :

df[["First", "Last"]] = df["Value"].str.extract(r'(.*?)\s*-\s*([A-Z]+(?:\s*-?\s*[A-Z]+)*)$')

面使用了 str.extract 的 2/多列版本。 它捕获第一个捕获组中的名字。 它会匹配,直到遇到最近的连字符,后面全部大写。 然后它与第二个捕获组中的姓氏匹配。

本文链接: http://a.10zhan.com/post/4310.html 转载请注明出处!