RAMzor Posted June 19, 2008 Posted June 19, 2008 (edited) I have a string like this: "VERSION3.9.312ASSY1A4E13F0B" or "Major.MinorSystemVersion21.0Test123" How can I strip special char () and extract DIGIT and dots (3.9.312 or 21.0) only between two word's ? This not work as required : $array = StringRegExp($str, "VERSION(.*)ASSY", 1) MsgBox(0, "***", $array[0]) Edited June 19, 2008 by RAMzor
Monamo Posted June 19, 2008 Posted June 19, 2008 I have a string like this: "VERSION3.9.312ASSY1A4E13F0B" or "Major.MinorSystemVersion21.0Test123" How can I strip special char () and extract DIGIT and dots (3.9.312 or 21.0) only between two word's ? This not work as required : $array = StringRegExp($str, "VERSION(.*)ASSY", 1) MsgBox(0, "***", $array[0]) Slight modification of your code, with updated entry for the special character (Chr(7)): $sSource = "VERSION3.9.312ASSY1A4E13F0B" $sPattern = "VERSION(.*)ASSY" $array = StringRegExp(StringReplace($sSource,Chr(7)," "), $sPattern , 1) MsgBox(0, "***", $array[0]) - MoChr(77)& Chr(97)& Chr(100)& Chr(101)& Chr(32)& Chr(121)& Chr(97)& Chr(32)& Chr(108)& Chr(111)& Chr(111)& Chr(107)-------I've told you 100,000 times not to exaggerate!-------Don't make me hit you with my cigarette hand...-------My scripts:Random Episode Selector, Keyboard MouseMover, CopyPath v2.1, SmartRename for XP,Window Tracer[sup]New![/sup]
zorphnog Posted June 19, 2008 Posted June 19, 2008 Or: $array = StringRegExp($str, "VERSION\D*((?:\d|\.)+)\D*ASSY", 3) If @error = 0 Then MsgBox(0, "***", $array[0])
RAMzor Posted June 19, 2008 Author Posted June 19, 2008 Thank you very much, it works! It is very difficult to deal with this syntax.
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