为正则表达式添加限制

时间:2014-08-01 20:31:31

标签: python regex

在成千上万的单词中,有两个例子 -

JANE_FONDA_AM_PM_YOGA_FOR_BEGINNERS
JANE_FONDA_EN

我需要的输出是:

JANE_FONDA_AM_PM_YOGA_FOR_BEGINNERS
JANE_FONDA

我提出的正则表达式是:

vendor_id_stem = re.sub(r'(_[A-Za-z_]*|_?[A-Za-z]{2,4}?\d?)$', "", vendor_id)

它目前给了我:

JANE # BAD
JANE_FONDA # GOOD

我需要它做的是确保如果没有结束,例如" en001"它没有剥离任何东西,我将如何修改现有的正则表达式这样做?

2 个答案:

答案 0 :(得分:0)

var s = "JANE_FONDA_EN"
s.replace(/_EN.*[^_]/, '');

> "JANE_FONDA"

答案 1 :(得分:0)

试试这个:

vendor_id_stem = re.sub(r'(_[A-Za-z]*|_?[A-Za-z]{2,4}?\d?)$', "", vendor_id)