Regular Expressions 101

Sponsors

Library entries

0
python

Editoria gamecoin

Capturar editorias do site gamecoin
Submitted by anonymous - 4 days ago
0
java

Business Address | WI | Trademark | USA

s
Submitted by anonymous - 6 days ago
0
java

carbon

test1
Submitted by anonymous - 6 days ago
0
golang

log timestamp

extract time stamp from log entry
Submitted by anonymous - 6 days ago
0
dotnet

Match IPv4 Valid

expression to capture valid IP
Submitted by anonymous - 9 days ago
0
python

Get All inst of Characters Name

Standard Script format tv
Submitted by SummerRay - 10 days ago
0
python

Tool Call

f
Submitted by anonymous - 13 days ago
0
python

Bit00:sadf::saf

Bit00:sadf::saf 提取
Submitted by anonymous - 13 days ago
0
dotnet

Get h1-6 tag

(.*?)
Submitted by OlegBel - 19 days ago
-1
python

pokernow starting new hand

asdf
Submitted by michael - 19 days ago
0
python

Skillshare matcher regex

Skillshare matcher regex
Submitted by anonymous - 24 days ago
0
java

Match gradle dependencies

.
Submitted by anonymous - 24 days ago
0
dotnet

nick anme

mvp
Submitted by doppler - 24 days ago
0
python

Emails

test
Submitted by anonymous - 25 days ago

Distinguish torrent files (series vs movies)

Vote

81

Regular Expression
python

"
^ # 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