使用带有字符串的正则表达式拆分系列的成员

时间:2014-07-23 15:23:16

标签: python regex python-2.7 pandas

我在一周前问了一个类似的问题,并试图弄乱这个代码以适应不同的目的,但似乎无法使它工作。

我想用月缩写作为分隔符来分割一个字符串(所以,我有JAN,FEB,MAR,APR,MAY,JUNE等)

我尝试使用

df['a'] = [re.split(r'[JUNE|JULY]+', x) for x in df['a']

及其中的一些变体(在.group(0)之前添加for x

我猜我的问题是分隔符的语法。查看正则表达式的文档,我应该能够使用字符串作为分隔符,但只能使用re.search找到一种方法。

还试过

df['a'] = [re.split[(('JUNE', 'JULY'), x).group(0) for x in df['a']]

系列中的数据是这样的:

df['a'] = ['ABCJUNE123', 'DEFJULY456', 'DEGJUNE765', 'DEFJUNE345']

我希望:

df['a'] = ['ABC', 'DEF', 'DEG', 'DEF']

我的表情中缺少什么?

1 个答案:

答案 0 :(得分:1)

你的正则表达式是,

r'JUNE|JULY'

示例:

>>> re.split(r'JUNE|JULY', 'ABCJUNE123')
['ABC', '123']

[JUNE|JULY]+正则表达式不代表JUNEJULY