我很难想出一个正则表达式来匹配特定的大小写。我有四种格式的电视节目列表:
我想匹配的是节目名。我的主要问题是我的正则表达式与前面的“.”匹配节目名。我的正则表达式如下:
"^([0-9a-zA-Z\.]+)(S[0-9]{2}E[0-9]{2}|[0-9]{4}|[0-9]{2}x[0-9]{2}|[0-9]{3})"
一些例子:
^{pr2}$所以问题是如何避免第一组以句点结尾?我意识到我可以简单地做到:
var.strip(".")
但是,这不适用于展会名称.0101英寸。有没有办法可以改进正则表达式来更好地处理这种情况?在
提前谢谢。在
我认为这样可以:
ETA:当然,如果您只是尝试从受信任字符串中提取不同的位,则可以使用字符串方法:
^{pr2}$最后一组的唯一真正限制是它不包含点?简单:
这和任何东西都相配,不贪婪。重要的部分是第二组,它以一个点开始,然后匹配任何非点字符,直到字符串的末尾。在
这适用于所有测试用例。在
问题似乎是您没有指定最后一个组之前的句点是必需的,所以类似^([0-9a-zA-Z\.]+)\.(S[0-9]{2}E[0-9]{2}[0-9]{4}[0-9]{2}x[0-9]{2}[0-9]{2}[0-9]{3}。在
相关问题 更多 >
编程相关推荐