Regular Expressions 101

Library entries

10
python

entity

no description available
Submitted by anonymous - 8 years ago
9
python

domain - host

no description available
Submitted by anonymous - 8 years ago
8
python

repeat group match

no description available
Submitted by anonymous - 8 years ago
7
python

CSS Import

no description available
Submitted by anonymous - 9 years ago
6
python

Find consecutive duplicate words

no description available
Submitted by anonymous - 8 years ago
5
python

Match Only Text

no description available
Submitted by anonymous - 7 years ago
5
python

Form Tag

Form Tag
Submitted by Jay Patel - 7 years ago
5
python

psswd

no description available
Submitted by anonymous - 7 years ago

Distinguish torrent files (series vs movies)

Vote

81

Regular Expression
python

r"
^ # get the title of this movie or series (?P<title> [-\w'"]+ # match separator to later replace into correct title (?P<separator> [ .] ) # note this *must* be lazy for the engine to work ltr not rtl (?: [-\w'"]+\2 )*? ) # start of movie vs serie check (?: # if this is an episode, lets match the season # number one way or another. if not, the year # of the movie (?: # series. can be a lot prettier if we used perl regex... # make sure this is not just a number in the title followed by our separator. # like, iron man 3 2013 or my.fictional.24.series (?! \d+ \2 ) # now try to match the season number (?: s (?: eason \2? )? )? (?P<season> \d\d? ) # needed to validate the last token is a dot, or whatever. (?: e\d\d? (?:-e?\d\d?)? | x\d\d? )? | # this is likely a movie, match the year (?P<year> [(\]]?\d{4}[)\]]? ) ) # make sure this ends with the separator, otherwise we # might be in the middle of something like "1080p" (?=\2) | # if we get here, this is likely still a movie. # match until one of the keywords (?= BOXSET | XVID | DIVX | LIMITED | UNRATED | PROPER | DTS | AC3 | AAC | BLU[ -]?RAY | HD(?:TV|DVD) | (?:DVD|B[DR]|WEB)RIP | \d+p | [hx]\.?264 ) )
"
gimx

Description

Loading markdown...
Submitted by Firas Dib - 9 years ago