<div dir="ltr">dont overthink.<div><a href="https://pypi.org/project/guessit/">https://pypi.org/project/guessit/</a><br></div><div><br></div><div><pre style="box-sizing:inherit;font-family:"Source Code Pro",monospace;font-size:0.85rem;margin-top:30px;margin-bottom:0px;padding:15px;background-color:rgb(249,249,249);border:1px solid rgb(211,211,211);color:rgb(108,108,108);overflow-x:auto"><code style="box-sizing:inherit;font-family:"Source Code Pro",monospace;font-size:inherit;background-color:transparent;border:0px;color:inherit;padding:0px">$ guessit "Treme.1x03.Right.Place,.Wrong.Time.HDTV.XviD-NoTV.avi"
For: Treme.1x03.Right.Place,.Wrong.Time.HDTV.XviD-NoTV.avi
GuessIt found: {
"title": "Treme",
"season": 1,
"episode": 3,
"episode_title": "Right Place, Wrong Time",
"source": "HDTV",
"video_codec": "Xvid",
"release_group": "NoTV",
"container": "avi",
"mimetype": "video/x-msvideo",
"type": "episode"
}</code></pre></div></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Thu, Jan 2, 2025 at 2:02 AM William Park via kwlug-disc <<a href="mailto:kwlug-disc@kwlug.org">kwlug-disc@kwlug.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><u></u>
<div>
Second method is easier.<br>
<blockquote><span style="font-family:monospace"><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">echo</span><span style="color:rgb(178,24,24);background-color:rgb(255,255,255)"> </span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">"</span><span style="color:rgb(178,24,24);background-color:rgb(255,255,255)">Zero.Dark.Thirty.2012.720p.BrRip.x264.BOKUTOX.YIFY.mp4</span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">"</span><span style="color:rgb(178,24,24);background-color:rgb(255,255,255)"> </span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">| </span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">while </span><span style="color:rgb(178,24,178);background-color:rgb(255,255,255)">IFS</span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">=. read -a x;
do</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span></span><br>
<span style="font-family:monospace"> <span style="color:rgb(24,178,178);background-color:rgb(255,255,255)">y</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">=
</span></span><br>
<span style="font-family:monospace"> <span style="color:rgb(24,178,178);background-color:rgb(255,255,255)">skip</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">=</span><span style="color:rgb(178,24,24);background-color:rgb(255,255,255)">0</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span></span><br>
<span style="font-family:monospace"> <span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">for</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> i </span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">in</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> </span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">"</span><span style="color:rgb(178,24,178);background-color:rgb(255,255,255)">${x[</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">@</span><span style="color:rgb(178,24,178);background-color:rgb(255,255,255)">]}</span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">";</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> </span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">do</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span></span><br>
<span style="font-family:monospace"> <span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">case</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> </span><span style="color:rgb(178,24,178);background-color:rgb(255,255,255)">$i</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> </span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">in</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span></span><br>
<span style="font-family:monospace"> 201<span style="color:rgb(178,24,178);background-color:rgb(255,255,255)">[</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">0-9</span><span style="color:rgb(178,24,178);background-color:rgb(255,255,255)">]</span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">)</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> y</span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">+="</span><span style="color:rgb(178,24,24);background-color:rgb(255,255,255)"> (</span><span style="color:rgb(178,24,178);background-color:rgb(255,255,255)">$i</span><span style="color:rgb(178,24,24);background-color:rgb(255,255,255)">)</span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">"</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> </span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">;;</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span></span><br>
<span style="font-family:monospace"> <span style="color:rgb(178,24,178);background-color:rgb(255,255,255)">[</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">0-9</span><span style="color:rgb(178,24,178);background-color:rgb(255,255,255)">]</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">*p</span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">)</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> y</span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">+="</span><span style="color:rgb(178,24,24);background-color:rgb(255,255,255)">-</span><span style="color:rgb(178,24,178);background-color:rgb(255,255,255)">$i</span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">"</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> </span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">;</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> </span><span style="color:rgb(24,178,178);background-color:rgb(255,255,255)">skip</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">=</span><span style="color:rgb(178,24,24);background-color:rgb(255,255,255)">1</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> </span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">;;</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span></span><br>
<span style="font-family:monospace"> mp4<span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">)</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> y</span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">+="</span><span style="color:rgb(178,24,24);background-color:rgb(255,255,255)">.</span><span style="color:rgb(178,24,178);background-color:rgb(255,255,255)">$i</span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">"</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> </span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">;;</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span></span><br>
<span style="font-family:monospace"> *<span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">)</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> </span><span style="color:rgb(178,24,178);background-color:rgb(255,255,255)">if [[</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> </span><span style="color:rgb(178,24,24);background-color:rgb(255,255,255)">skip</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> </span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">-eq</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> </span><span style="color:rgb(178,24,24);background-color:rgb(255,255,255)">0</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> </span><span style="color:rgb(178,24,178);background-color:rgb(255,255,255)">]]; then</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> y</span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">+="</span><span style="color:rgb(178,24,178);background-color:rgb(255,255,255)">${y</span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">:+</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> </span><span style="color:rgb(178,24,178);background-color:rgb(255,255,255)">}$i</span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">"</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">; fi </span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">;;</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span></span><br>
<span style="font-family:monospace"> <span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">esac</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span></span><br>
<span style="font-family:monospace"> <span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">done</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span></span><br>
<span style="font-family:monospace"> <span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">echo</span><span style="color:rgb(178,24,24);background-color:rgb(255,255,255)"> </span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">"</span><span style="color:rgb(178,24,24);background-color:rgb(255,255,255)">y={</span><span style="color:rgb(178,24,178);background-color:rgb(255,255,255)">$y</span><span style="color:rgb(178,24,24);background-color:rgb(255,255,255)">}</span><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">"</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span></span><br>
<span style="font-family:monospace"><span style="color:rgb(175,95,0);background-color:rgb(255,255,255)">done</span></span><span style="font-family:monospace"><br>
</span></blockquote>
-- <br>
<br>
<div>On 2025-01-01 03:52, William Park via
kwlug-disc wrote:<br>
</div>
<blockquote type="cite">
<font face="Noto Serif">From the top of my head,<br>
- cut the string on ".2012.720p."<br>
- change "</font>Zero.Dark.Thirty" to "Zero Dark Thirty "<br>
- change <font face="Noto Serif">".2012.720p." to
"(2012-720p)"<br>
- change "</font>BrRip.x264.BOKUTOX.YIFY.mp4" to ".mp4"<br>
<br>
Or, <br>
- cut the string on "." (period)<br>
- loop through the substrings, and search for "2012" and/or
"720p"<br>
- reassemble parts<br>
-- <br>
William<br>
<br>
<br>
<div>On 2024-12-31 11:22, John Driezen
wrote:<br>
</div>
<blockquote type="cite">Can
anyone give me a regular expression to turn the following
filename <br>
<br>
"Zero.Dark.Thirty.2012.720p.BrRip.x264.BOKUTOX.YIFY.mp4" <br>
<br>
into <br>
<br>
"Zero Dark Thirty (2012)-720p.mp4" <br>
<br>
201[0-9] matches the year <br>
<br>
How do I match the title before the year, and ignore everything
after the ".720p"? <br>
<br>
John Driezen <br>
<br>
<br>
<br>
_______________________________________________ <br>
kwlug-disc mailing list <br>
To unsubscribe, send an email to <a href="mailto:kwlug-disc-leave@kwlug.org" target="_blank">kwlug-disc-leave@kwlug.org</a> <br>
with the subject "unsubscribe", or email <br>
<a href="mailto:kwlug-disc-owner@kwlug.org" target="_blank">kwlug-disc-owner@kwlug.org</a> to
contact a human being. <br>
</blockquote>
<br>
<br>
<fieldset></fieldset>
<pre>_______________________________________________
kwlug-disc mailing list
To unsubscribe, send an email to <a href="mailto:kwlug-disc-leave@kwlug.org" target="_blank">kwlug-disc-leave@kwlug.org</a>
with the subject "unsubscribe", or email
<a href="mailto:kwlug-disc-owner@kwlug.org" target="_blank">kwlug-disc-owner@kwlug.org</a> to contact a human being.
</pre>
</blockquote>
<br>
</div>
_______________________________________________<br>
kwlug-disc mailing list<br>
To unsubscribe, send an email to <a href="mailto:kwlug-disc-leave@kwlug.org" target="_blank">kwlug-disc-leave@kwlug.org</a><br>
with the subject "unsubscribe", or email<br>
<a href="mailto:kwlug-disc-owner@kwlug.org" target="_blank">kwlug-disc-owner@kwlug.org</a> to contact a human being.<br>
</blockquote></div>