替代正则表达式匹配前两个破折号之间的所有文本

时间:2016-01-05 01:52:46

标签: python regex python-3.x

我试图使用以下正则表达式\-(.*?)-|\-(.*?)*它似乎在regexr上正常工作但python说没有什么可重复的?

我尝试匹配前两个短划线之间的所有文字,或者在第一个-之后的第一个所有文字之后是否存在第二个短划线。

此外,上面的正则表达式包括破折号,但最好是排除这些,所以我不需要额外替换等。

1 个答案:

答案 0 :(得分:2)

您可以对此模式使用re.search

-([^-]*)

请注意,-不需要转义。

另一种方法是仅搜索两个第一个破折号的位置,并提取这些位置之间的子串。或者您可以使用split

>>> 'aaaaa-bbbbbb-ccccc-ddddd'.split('-')[1]
'bbbbbb'