You could do something like this: >>> version = re.search(r'v\d+.nk', 'my_nukeFile_v12.nk').group()>>> >>> version'v12.nk'
At this point, you are guaranteed to always have a ‘v’ infront, and that it will always end with ‘.nk’. At which point you could >>> version = int(version[1:-3])12 On 7 May 2014 07:34, Stefan Andersson <[email protected]> wrote: > So here is a though. How would you guys go about to sort versioning that > has no padding? For instance Nuke always adds v1,v2,v3 etc without padding. > And some users are used to do that when versioning their files. I try and > trap most of those things to add padding. But... there is always that case > when you can't. > > v = ["test_v1.ma", "test_v2.ma","test_v11.ma","test_v8.ma","test_v10.ma"] > > how would you sort and print the last version? In a clever way. Right now > there is a lot of splitting and sorting for me to get it right. But it > feels there would be a "smart" way with regex, but I can't get my head > around how to use that. > > regards > stefan > > > > > > > > On Wed, May 7, 2014 at 6:42 AM, Marcus Ottosson <[email protected]>wrote: > >> Just reading up on Pyparsing so I could be off here, but I would actually >> argue that if a codebase relies heavily enough on strings (for >> identification?) that regex no longer cuts it, I would consider whether or >> not there is a better way of doing it, and not necessarily turn to heavier >> guns in parsing. >> >> Again, I could very well be misunderstanding. Does anyone have an example >> of Pyparsing in action? >> >> >> On 7 May 2014 00:12, Jeremy YeoKhoo <[email protected]> wrote: >> >>> Thanks so much Chad, yes I agree. Not many TDs are aware or understand >>> the necessity of good program design and structure (me included!) and in >>> this case naming convention! Ill have to have a look at that and apply what >>> I can to my own set of tools that i am currently in the process of creating >>> >>> Thanks >>> -Jeremy >>> >>> >>> On Sunday, 4 May 2014 20:47:26 UTC+10, Jeremy YeoKhoo wrote: >>> >>>> Hey guys, >>>> >>>> This should be fairly easy for you guys who know regex. If I have a >>>> string that I want to enable versioning, so say for an example I want to >>>> recognize a string if it contains ['v001', 'v002', etc...] >>>> I have something like this... >>>> >>>> remp= re.search('[0-9]+', 'hello_v001') >>>> print temp.group() >>>> >>>> but I dont want it to return when: >>>> remp= re.search('[0-9]+', 'hello_001') >>>> print temp.group() >>>> >>>> Thanks >>>> -Jeremy >>>> >>>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Python Programming for Autodesk Maya" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/python_inside_maya/ba398c57-19f8-4096-8524-07f609f1496c%40googlegroups.com<https://groups.google.com/d/msgid/python_inside_maya/ba398c57-19f8-4096-8524-07f609f1496c%40googlegroups.com?utm_medium=email&utm_source=footer> >>> . >>> >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> >> >> -- >> *Marcus Ottosson* >> [email protected] >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Python Programming for Autodesk Maya" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/python_inside_maya/CAFRtmOD-0rkPSh1QZrzntoLmk7Fawst3%3DGHWmT5w0Fo0yEgn5Q%40mail.gmail.com<https://groups.google.com/d/msgid/python_inside_maya/CAFRtmOD-0rkPSh1QZrzntoLmk7Fawst3%3DGHWmT5w0Fo0yEgn5Q%40mail.gmail.com?utm_medium=email&utm_source=footer> >> . >> >> For more options, visit https://groups.google.com/d/optout. >> > > > > -- > Stefan Andersson | Digital Janitor > social media -> "sanders3d" > > -- > You received this message because you are subscribed to the Google Groups > "Python Programming for Autodesk Maya" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/python_inside_maya/CAKW24e29hZ%3DgrJndzhGxpw1j%2BEgVPc6Oi%2Bdcop5d_DMTwxtxCg%40mail.gmail.com<https://groups.google.com/d/msgid/python_inside_maya/CAKW24e29hZ%3DgrJndzhGxpw1j%2BEgVPc6Oi%2Bdcop5d_DMTwxtxCg%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > > For more options, visit https://groups.google.com/d/optout. > -- *Marcus Ottosson* [email protected] -- You received this message because you are subscribed to the Google Groups "Python Programming for Autodesk Maya" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/CAFRtmOBztcF%3D37bkZAQS%3Dk8iqmPfywdMtDRpkk2EH-ymQyp3RQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
