我似乎在Python中找到工作日正确的正则表达式时遇到了问题。我试过这个:
/(周一|周二| wednes |周四|周五| satur |太阳)天/
问题在于,如果我在文本中只有“mon”,这个正则表达式会接受,但如果我有“星期一”,我只希望它接受。我该如何解决?我似乎无法理解如何做到这一点。
答案 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'