Ram Posted December 16, 2011 Share Posted December 16, 2011 (edited) Hi,I want to create a folder name from a particular text given my user. Mostly this would be a URL and it will be same always. Just the year will be changed.For e.g:http://www.internalLink.com//archive/text.php?lang=English&yr=1995&mnth=8&adOpt=0From the url = I want to extract - Word "English", year = 1995 and month= 8Combine all the three to make a folder. Is this possible? if so how?BTW: The url is going to be the same - just that three items = English, 1995, 8 will be changed.I was looking at the examples for StringRegExp couldn't understand a bit - look complicated - an example simple way would help me out!Awaiting your response!Thanks! Edited December 16, 2011 by Ram Link to comment Share on other sites More sharing options...
kylomas Posted December 16, 2011 Share Posted December 16, 2011 Ram, See stringinstr.. kylomas Forum Rules Procedure for posting code "I like pigs. Dogs look up to us. Cats look down on us. Pigs treat us as equals." - Sir Winston Churchill Link to comment Share on other sites More sharing options...
sleepydvdr Posted December 16, 2011 Share Posted December 16, 2011 Here's a way: #include <array.au3> #include <string.au3> $string = "http://www.internalLink.com//archive/text.php?lang=English&yr=1995&mnth=8&adOpt=0" $string1 = _StringBetween($string, "=", "&") ;_ArrayDisplay($string1) ; This is the array returned $newString = $string1[0] & "_" & $string1[1] & "_" & $string1[2] MsgBox(0, "", "Your final string is:" & @CRLF & $newString) #include <ByteMe.au3> Link to comment Share on other sites More sharing options...
Ram Posted December 16, 2011 Author Share Posted December 16, 2011 Here's a way: #include <array.au3> #include <string.au3> $string = "http://www.internalLink.com//archive/text.php?lang=English&yr=1995&mnth=8&adOpt=0" $string1 = _StringBetween($string, "=", "&") ;_ArrayDisplay($string1) ; This is the array returned $newString = $string1[0] & "_" & $string1[1] & "_" & $string1[2] MsgBox(0, "", "Your final string is:" & @CRLF & $newString) Wow.. I didn't know there is something called _StringBetween. This is what I was expecting... Good that the url has a "=" to "&" after the string that I want to pick up.. Great. Thanks a lot!! Link to comment Share on other sites More sharing options...
kylomas Posted December 16, 2011 Share Posted December 16, 2011 (edited) Ram, If you are curious, this is one way for regexp to do this: local $mystr = "[url="http://www.internallink.com//archive/text.php?lang=English&yr=1995&mnth=8&adOpt"]http://www.internalLink.com//archive/tex...xt.php?lang=English&yr=1995[/url]" local $a_10 = stringregexp($mystr,"=(.*?)&",3) if @error <> 0 then msgbox(1,'REGEXP ERROR',@error) #cs = find "=" (.*?) get all chars until & you find an "&" repeat this until no more matches each element in the array will match the capturing groups in order that they are found #ce consolewrite('lang = ' & $a_10[0] & @lf & 'yr = ' & $a_10[1] & @lf & 'mnth = ' & $a_10[2] & @lf) kylomas Edit: code editor is not showing all code...use the "popup" button to see the last line edit2: if you try this supply a new string, this $%^^&## editor screwed the origional up!! Edited December 16, 2011 by kylomas Forum Rules Procedure for posting code "I like pigs. Dogs look up to us. Cats look down on us. Pigs treat us as equals." - Sir Winston Churchill Link to comment Share on other sites More sharing options...
Ram Posted December 16, 2011 Author Share Posted December 16, 2011 Ram, If you are curious, this is one way for regexp to do this: local $mystr = "[url="http://www.internallink.com//archive/text.php?lang=English&yr=1995&mnth=8&adOpt"]http://www.internalLink.com//archive/tex...xt.php?lang=English&yr=1995[/url]" local $a_10 = stringregexp($mystr,"=(.*?)&",3) if @error <> 0 then msgbox(1,'REGEXP ERROR',@error) #cs = find "=" (.*?) get all chars until & you find an "&" repeat this until no more matches each element in the array will match the capturing groups in order that they are found #ce consolewrite('lang = ' & $a_10[0] & @lf & 'yr = ' & $a_10[1] & @lf & 'mnth = ' & $a_10[2] & @lf) kylomas Edit: code editor is not showing all code...use the "popup" button to see the last line edit2: if you try this supply a new string, this $%^^&## editor screwed the origional up!! wow. This is also worked. Thanks a lot kylomas. I changed few things and written my own code and works just fine!! It is Strange the code editor is giving issues when posting!! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now