我正在进行目录侦听,需要获取所有遵循以下模式的目录名:Feb14-2014
和14022014-sometext
。目录名不能包含点,所以我不想匹配14022014-sometext.more
。正如您所见,我只想匹配遵循%b%d-%Y
和%d%m%Y-textofanylengthWithoutDots
模式的目录。你知道吗
对于第一种情况,应该是[a-zA-Z]{3}\d{2}
。我不知道如何解析其余的,因为我的正则表达式技能很差,对不起。所以我希望有人能告诉我正确的模式是什么样的。谢谢。你知道吗
Tags:
我假设每个目录列表都用新行分隔
将匹配两种情况,并将匹配的文本,只有当它是不间断的(由点或其他任何事情为此事),直到它击中行尾。你知道吗
注意事项:
\w+
替换为[^.]+
。你知道吗/m
,否则$
将只匹配字符串的结尾。你知道吗^
,但是如果每行包含一个目录,您可以这样做(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)
,而不是[A-Z]\w{2}
。我这样做并不是为了保持可读性。为了便于维护,我还建议您将其存储在python数组中,并将其动态插入regex中。你知道吗看看它在行动:http://regex101.com/r/pS6iY9
那很容易。 我能做的最好的是:
第一部分匹配第一类日期,第二部分匹配第二类日期。你知道吗
相关问题 更多 >
编程相关推荐