Tim Greer
12/26/2008 5:22:00 PM
Chris Hoeppner wrote:
> Hey!
>
> I'm writing a little script to rename files with weird names but
> common bits to a common format. Here's the regular expression I use to
> extract the common data:
>
> /.*s?(\d?\d)x?e?(\d\d).*\.(\w{3})$/i
>
> It's meant to rename TV Show files, both video and subtitles. I'm
> having trouble making it match the first group however. One of the
> digits should be optional, so I stuffed a ? sign there. However, it
> only matches one digit, leaving strings like 12x14 with captures ["2",
> "14"].
>
> I'm not quite sure if there's anything wrong with my expression there,
> but I'd swear it's the way to do it. Maybe you're able to see
> something I'm looking past.
>
> Thanks!
..* should probably be set to non greedy .*?, so it doesn't grab things
you don't want.
/.*?s?(\d?\d)x?e?(\d\d).*?\.(\w{3})$/i
What exactly does the data you're pulling the digits and 3 letter file
extension from look like?
--
Tim Greer, CEO/Founder/CTO, BurlyHost.com, Inc.
Shared Hosting, Reseller Hosting, Dedicated & Semi-Dedicated servers
and Custom Hosting. 24/7 support, 30 day guarantee, secure servers.
Industry's most experienced staff! -- Web Hosting With Muscle!