在python中工作日的正则表达式

时间:2014-02-11 17:30:07

标签: python regex

我似乎在Python中找到工作日正确的正则表达式时遇到了问题。我试过这个:

/(周一|周二| wednes |周四|周五| satur |太阳)天/

问题在于,如果我在文本中只有“mon”,这个正则表达式会接受,但如果我有“星期一”,我只希望它接受。我该如何解决?我似乎无法理解如何做到这一点。

3 个答案:

答案 0 :(得分:7)

这是一个适用于一周中任何一天的正则表达式:

(Mo(n(day)?)?|Tu(e(sday)?)?|We(d(nesday)?)?|Th(u(rsday)?)?|Fr(i(day)?)?|Sa(t(urday)?)?|Su(n(day)?)?)

答案 1 :(得分:1)

好吧,你的正则表达式似乎对我有用:

>>> import re

>>> r=re.compile(r"(mon|tues|wednes|thurs|fri|satur|sun)day")

>>> r.match("monday")
<_sre.SRE_Match at 0x2337820>

>>> r.match("mon")

答案 2 :(得分:0)

您也可以尝试如下,

  

a ='your-string'

     

result = re.findall('(mon | tues | wed | thurs | fri | sat | sun)day',a)

     

如果结果:_day = result [0] +'day'