phew Posted August 6, 2007 Share Posted August 6, 2007 Hi, i read the F1 helpfile for StringRegExp() but actually i didn't really understand it , so Func doFUNKY($text1) If (StringRegExp($text1, "353 (.*?) (.*?) (.*?) :(.*?)", 0) = 1) Then IniWrite("TEST.ini", "NAMES", "", "") IniWriteSection("TEST.ini", "NAMES", $text1) EndIf EndFunc i am trying to grab the names from a irc server (raw 353) reply the packet i receive from the server is following: <- :mediatraffic2.fi.quakenet.org 353 MYNICK @ #CHANNEL :MYNICK @NICK1 @NICK2 @NICK3 @NICK4 @NICK5 @ @NICK6 <- :mediatraffic2.fi.quakenet.org 366 MYNICK #CHANNEL :End of /NAMES list. where MYNICK stands for my current nickname (e.g: phew) NICK1 = eg: MichaelJackson NICK2 = ... NICK6 = eg: TBH|Neo^ #CHANNEL = eg: #help i guess my function is completely wrong, so anyone can gimme an example perhaps? Link to comment Share on other sites More sharing options...
jvanegmond Posted August 6, 2007 Share Posted August 6, 2007 Don't use a regular expression here.Use the simple string manipulation functions. github.com/jvanegmond Link to comment Share on other sites More sharing options...
phew Posted August 6, 2007 Author Share Posted August 6, 2007 ok i'll try it Link to comment Share on other sites More sharing options...
phew Posted August 6, 2007 Author Share Posted August 6, 2007 (edited) now i tried following:Global $recv = "" Global $file = "stringrcv.txt" Func getNames($socket, $recv) While (1) $recv = TCPRecv($socket, 1024) If ($recv <> "") Then $test = StringInStr($recv, "353") MsgBox(1, "", $test) ExitLoop Else ContinueLoop EndIf WEnd EndFuncafter i pressed the "JOIN" button and the bot joins a channel i wait for $recv to receive the server's packet and then i want to msgbox it's content but i only msgbox StringInStr() value instead of the line matching my "353"-string:StringInStr ( "string", "substring" [, casesense [, occurrence]] ) Return Value Success: Returns the position of the substring. Failure: Returns 0 if substring not found. @Error 0 - Normal operation 1 - Occurrence was 0. Occurrence must be a positive or negative integer.but how do i msgbox the packet that matched string "353" in it's content?EDIT: error in expression Edited August 6, 2007 by phew 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