Busti Posted July 21, 2006 Share Posted July 21, 2006 (edited) ok hi all, i'm going to make a function that i need for a later project, but i need some help, because it wont work as i want what it shall do : my $string = "hi;hi;hi;hi;bye" he shall format it as : $string = "hi*4;bye" and here is the function : expandcollapse popupdbg(_DivDub("hi;hi;hi;hi;bye")) Func _DivDub($avString,$avLim=";") Local $weit=0,$rrloop=0,$mmsg="" $avUString = StringSplit( $avString , $avLim ) While 1 For $i=1 To $avUString[0] If $i <> ($avUString[0]-1) And ($avUString[$i+1] == $avUString[$i]) Then For $o_CheckUntilDone = $i To $avUString[0] If $avUString[$i] <> $avUString[$o_CheckUntilDone] Then $weit=1 ExitLoop EndIf If $weit=1 Then $avUString[$i] = $avUString[$i] &"*"& ($o_CheckUntilDone-1) For $i_Replace_String = ($i+1) To ($o_CheckUntilDone-1) $avUString[$i_Replace_String] = "" Next $weit=0 $rrloop=1 EndIf If $rrloop=1 Then For $i_Refresh_String = 1 To $avUString If $avUString[$i_Refresh_String] <> "" Then $mmsg&=$avUString[$i_Refresh_String]&$avLim EndIf Next $_NewUsingString=StringSplit($mmsg,$avLim) ReDim $avUString[$_NewUsingString[0]+1] For $MakeNewArray=1 To $_NewUsingString[0] $avUString[$MakeNewArray] = $_NewUsingString[$MakeNewArray] Next $avUString[0] = $_NewUsingString[0] $rrloop=0 ExitLoop 2 EndIf Next EndIf If $i = $avUString[0] Then ExitLoop 2 Next WEnd EndFunc Func dbg($msg) ConsoleWrite( $msg&@LF ) EndFunc Edited July 21, 2006 by Busti My UDF's : Startet on : 06.06.2006_CaseSearchOrReplaceStr();~> Searches OR Replaces a String,;~> With or Without Casesensivity Link to comment Share on other sites More sharing options...
Moderators SmOke_N Posted July 21, 2006 Moderators Share Posted July 21, 2006 (edited) $string = 'hi;hi;hi;hi;bye' MsgBox(64, 'Info', _ConvertStrings($string)) Func _ConvertStrings($sText, $vDelim = ';') Local $aSplit = StringSplit($sText, $vDelim) Local $sNewString For $iCount = 1 To UBound($aSplit) - 1 If StringInStr($sText, $aSplit[$iCount]) Then $sText = StringReplace($sText, $aSplit[$iCount], '', 0, 1) $iExtended = @extended If $iExtended > 1 Then $sNewString &= $aSplit[$iCount] & '*' & $iExtended & $vDelim Else $sNewString &= $aSplit[$iCount] & $vDelim EndIf EndIf Next Return StringTrimRight($sNewString, 1) EndFunc Edited July 21, 2006 by SmOke_N Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer. Link to comment Share on other sites More sharing options...
Busti Posted July 21, 2006 Author Share Posted July 21, 2006 (edited) lol smoke_n .... i worked about 1 month on this error XD lol i love you bigbigbig thx dbg(_DivDub("hi;hi;hi;hi;bye;bye;hi;lol;lol;")) $string = 'hi;hi;hi;hi;bye' ;MsgBox(64, 'Info', _ConvertStrings($string)) Func _DivDub($sText, $vDelim = ';') Local $aSplit = StringSplit($sText, $vDelim) Local $sNewString For $iCount = 1 To UBound($aSplit) - 1 If StringInStr($sText, $aSplit[$iCount]) Then $sText = StringReplace($sText, $aSplit[$iCount], '', 0, 1) $iExtended = @extended If $iExtended > 1 Then $sNewString &= $aSplit[$iCount] & '*' & $iExtended & $vDelim Else $sNewString &= $aSplit[$iCount] & $vDelim EndIf EndIf Next Return StringTrimRight($sNewString, 1) EndFunc works like a charm i love you so big hi*5;bye*2;lol*2 Edited July 21, 2006 by Busti My UDF's : Startet on : 06.06.2006_CaseSearchOrReplaceStr();~> Searches OR Replaces a String,;~> With or Without Casesensivity Link to comment Share on other sites More sharing options...
Moderators SmOke_N Posted July 21, 2006 Moderators Share Posted July 21, 2006 lol smoke_n .... i worked about 1 month on this error XD lol i love you bigbigbig thx dbg(_DivDub("hi;hi;hi;hi;bye;bye;hi;lol;lol;")) $string = 'hi;hi;hi;hi;bye' ;MsgBox(64, 'Info', _ConvertStrings($string)) Func _DivDub($sText, $vDelim = ';') Local $aSplit = StringSplit($sText, $vDelim) Local $sNewString For $iCount = 1 To UBound($aSplit) - 1 If StringInStr($sText, $aSplit[$iCount]) Then $sText = StringReplace($sText, $aSplit[$iCount], '', 0, 1) $iExtended = @extended If $iExtended > 1 Then $sNewString &= $aSplit[$iCount] & '*' & $iExtended & $vDelim Else $sNewString &= $aSplit[$iCount] & $vDelim EndIf EndIf Next Return StringTrimRight($sNewString, 1) EndFunc works like a charm i love you so big hi*5;bye*2;lol*2I worked 13 minutes on it... but that doesn't say much... The reason I say that, is I still think you should do some error checking to make sure that you don't run into it replace 'hi;hilo'... this would return hi*2 I believe... so it's an easier solution, but not neccesarily the correct one. Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer. Link to comment Share on other sites More sharing options...
Busti Posted July 21, 2006 Author Share Posted July 21, 2006 (edited) would it work with my :my case search & replace ?could you make a funktion to reverse the thing ?hi*3 will be hi;hi;hiim again going to make errors Edited July 21, 2006 by Busti My UDF's : Startet on : 06.06.2006_CaseSearchOrReplaceStr();~> Searches OR Replaces a String,;~> With or Without Casesensivity Link to comment Share on other sites More sharing options...
Developers Jos Posted July 21, 2006 Developers Share Posted July 21, 2006 (edited) this will check for exact words: $string = 'hi;hi;hi;hiho;bye;hi;hi;hiho' MsgBox(64, 'Info', _ConvertStrings($string)) Func _ConvertStrings($sText, $vDelim = ';') Local $aSplit = StringSplit($sText, $vDelim) Local $sNewString $sText = $vDelim & $sText & $vDelim For $iCount = 1 To UBound($aSplit) - 1 If StringInStr($sText, $vDelim & $aSplit[$iCount] & $vDelim) Then $sText = StringReplace($sText,$aSplit[$iCount] & $vDelim, '') $iExtended = @extended If $iExtended > 1 Then $sNewString &= $aSplit[$iCount] & '*' & $iExtended & $vDelim Else $sNewString &= $aSplit[$iCount] & $vDelim EndIf EndIf Next Return StringTrimRight($sNewString, 1) EndFunc Edited July 21, 2006 by JdeB SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past. Link to comment Share on other sites More sharing options...
Busti Posted July 21, 2006 Author Share Posted July 21, 2006 (edited) thank you JDeb, now this is an example what the programm saves me : Orgiginal String :"5592405;5066061;14145495;2697513;8421504;2697513;4342338;2697513;2697513;1447446;421374;12632256;3355443;10526884;6710886;3355443;5066061;2697513;3355443;2697513;1447446;487934;3355443;10526884;2697513;12632256;2697513;4342338;1447446;3355443;2697513;1447446;553726;2697513;6710886;4342338;5592405;5066061;2697513;2697513;2697513;1447446;553726;553726;6710886;1447446;8816262;2697513;4342338;1447446;3355443;1447446;1447446;553726;553726;3355443;3355443;5592405;2697513;3355443;1447446;2697513;1447446;553726;553726;553726;2697513;6710886;1447446;2697513;1447446;1447446;2697513;487934;553726;553726;553726;3355443;1447446;1447446;1447446;1447446;355320;355579;487934;553726;553726;553726;220905;221674;156144;288241;288501;355320;355579;421374;357119;553726;553726;220905;89837;89841;90612;156406;223480;355579;421374;357119;357119;357119;220905;89070;89841;156144;156406;223480;289531;224510;421374;357119;357119" DivDubbed String :"5592405*3;5066061*3;14145495;2697513*19;8421504;4342338*4;1447446*18;421374*4;12632256*2;3355443*10;10526884*2;6710886*4;487934*3;553726*16;8816262;355320*2;355579*3;220905*3;221674;156144*2;288241;288501;357119*6;89837;89841*2;90612;156406*2;223480*2;89070;289531;224510" Edited July 21, 2006 by Busti My UDF's : Startet on : 06.06.2006_CaseSearchOrReplaceStr();~> Searches OR Replaces a String,;~> With or Without Casesensivity Link to comment Share on other sites More sharing options...
Moderators SmOke_N Posted July 21, 2006 Moderators Share Posted July 21, 2006 this will check for exact words: $string = 'hi;hi;hi;hiho;bye;hi;hi;hiho' MsgBox(64, 'Info', _ConvertStrings($string)) Func _ConvertStrings($sText, $vDelim = ';') Local $aSplit = StringSplit($sText, $vDelim) Local $sNewString $sText = $vDelim & $sText & $vDelim For $iCount = 1 To UBound($aSplit) - 1 If StringInStr($sText, $vDelim & $aSplit[$iCount] & $vDelim) Then $sText = StringReplace($sText,$aSplit[$iCount] & $vDelim, '') $iExtended = @extended If $iExtended > 1 Then $sNewString &= $aSplit[$iCount] & '*' & $iExtended & $vDelim Else $sNewString &= $aSplit[$iCount] & $vDelim EndIf EndIf Next Return StringTrimRight($sNewString, 1) EndFuncLMAO... I had remembered a conversation Jdeb me and you had on repeats... and I was just now implimenting it!! Nice work... Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer. Link to comment Share on other sites More sharing options...
Busti Posted July 21, 2006 Author Share Posted July 21, 2006 smoke_n can you rewrite this for reverse the convertet string back ? would be nice ! My UDF's : Startet on : 06.06.2006_CaseSearchOrReplaceStr();~> Searches OR Replaces a String,;~> With or Without Casesensivity Link to comment Share on other sites More sharing options...
Moderators SmOke_N Posted July 21, 2006 Moderators Share Posted July 21, 2006 (edited) smoke_n can you rewrite this for reverse the convertet string back ? would be nice !expandcollapse popup$string = 'hi;hi;hi;hiho;bye;hi;hi;hiho' $Converted = _ConvertStrings($string) $ConvertedBack = _ConvertStrings2($Converted) MsgBox(64, 'Info:', $Converted & @CR & $ConvertedBack) Func _ConvertStrings($sText, $vDelim = ';') Local $aSplit = StringSplit($sText, $vDelim) Local $sNewString $sText = $vDelim & $sText & $vDelim For $iCount = 1 To UBound($aSplit) - 1 If StringInStr($sText, $vDelim & $aSplit[$iCount] & $vDelim) Then $sText = StringReplace($sText,$aSplit[$iCount] & $vDelim, '') $iExtended = @extended If $iExtended > 1 Then $sNewString &= $aSplit[$iCount] & '*' & $iExtended & $vDelim Else $sNewString &= $aSplit[$iCount] & $vDelim EndIf EndIf Next Return StringTrimRight($sNewString, 1) EndFunc Func _ConvertStrings2($sText, $vDelim = ';') Local $aSplit1 = StringSplit($sText, $vDelim) Local $sNewString For $iCount = 1 To UBound($aSplit1) - 1 If StringInStr($aSplit1[$iCount], '*') Then Local $aSplit2 = StringSplit($aSplit1[$iCount], '*', 1) For $xCount = 1 To Number($aSplit2[2]) $sNewString &= $aSplit2[1] & $vDelim Next Else $sNewString &= $aSplit1[$iCount] & $vDelim EndIf Next Return StringTrimRight($sNewString, 1) EndFunc Edited July 21, 2006 by SmOke_N Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer. Link to comment Share on other sites More sharing options...
Busti Posted July 21, 2006 Author Share Posted July 21, 2006 Thank you! youre nice =) My UDF's : Startet on : 06.06.2006_CaseSearchOrReplaceStr();~> Searches OR Replaces a String,;~> With or Without Casesensivity Link to comment Share on other sites More sharing options...
Moderators SmOke_N Posted July 21, 2006 Moderators Share Posted July 21, 2006 (edited) Thank you! youre nice =)Ha!!, that's still in debate.. but your welcome.... I only did it because I saw how hard you were working on yours Edit: Here 1 Function... $iCount 0 will convert it back to regular:$string = 'hi;hi;hi;hiho;bye;hi;hi;hiho' $Converted = _ConvertStrings($string) $ConvertedBack = _ConvertStrings($Converted, ';', 0) MsgBox(64, 'Info:', $Converted & @CR & $ConvertedBack) Func _ConvertStrings($sText, $vDelim = ';', $iConvert = 1); $iConvert = 0 will do the reversal Local $aSplit = StringSplit($sText, $vDelim) Local $sNewString If $iConvert Then $sText = $vDelim & $sText & $vDelim For $iCount = 1 To UBound($aSplit) - 1 If StringInStr($sText, $vDelim & $aSplit[$iCount] & $vDelim) Then $sText = StringReplace($sText,$aSplit[$iCount] & $vDelim, '') $iExtended = @extended If $iExtended > 1 Then $sNewString &= $aSplit[$iCount] & '*' & $iExtended & $vDelim Else $sNewString &= $aSplit[$iCount] & $vDelim EndIf EndIf Next Else For $iCount = 1 To UBound($aSplit) - 1 If StringInStr($aSplit[$iCount], '*') Then Local $aSplit2 = StringSplit($aSplit[$iCount], '*', 1) For $xCount = 1 To Number($aSplit2[2]) $sNewString &= $aSplit2[1] & $vDelim Next Else $sNewString &= $aSplit[$iCount] & $vDelim EndIf Next EndIf Return StringTrimRight($sNewString, 1) EndFunc Edited July 21, 2006 by SmOke_N Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer. Link to comment Share on other sites More sharing options...
Busti Posted July 21, 2006 Author Share Posted July 21, 2006 (edited) Ha!!, that's still in debate.. but your welcome.... I only did it because I saw how hard you were working on yours hehe thx, but now i crashed your func xD expandcollapse popup$_ScreenColors = " 555555;4D4D4D;7D7D7;292929;808080;292929;424242;292929;292929;161616;66DFE;;333333;4;666666;333333;4D4D4D;292929;333333;292929;161616;771FE;333333;4;292929;;292929;424242;161616;333333;292929;161616;872FE;292929;666666;424242;555555;4D4D4D;292929;292929;292929;161616;872FE;872FE;666666;161616;868686;292929;424242;161616;333333;161616;161616;872FE;872FE;333333;333333;555555;292929;333333;161616;292929;161616;872FE;872FE;872FE;292929;666666;161616;292929;161616;161616;292929;771FE;872FE;872FE;872FE;333333;161616;161616;161616;161616;56BF8;56CFB;771FE;872FE;872FE;872FE;35EE9;361EA;261F0;465F1;466F5;56BF8;56CFB;66DFE;572FF;872FE;872FE;35EE9;15EED;15EF1;161F4;262F6;368F8;56CFB;66DFE;572FF;572FF;572FF;35EE9;15BEE;15EF1;261F0;262F6;368F8;46AFB;36CFE;66DFE;572FF;572FF" ;_ScanScreen( 10,10,20,20 ) $_DivDub = _DivDub($_ScreenColors) ;left;top;right;bottom dbg( "Original String : " &@LF& $_ScreenColors ) dbg( "DivDubbed String: " &@LF& $_DivDub) dbg( "BackConvertet String: " &@LF& _MathDub($_DivDub)) ; _DivDub( $sText ,[ $vDelim )] ; Converts the String to make it smaller. ; The Idea by Busti :P ; Made it working by Smoke_N & JdeB! Thanx to you Guys Func _DivDub($sText, $vDelim = ';') Local $aSplit = StringSplit($sText, $vDelim) Local $sNewString $sText = $vDelim & $sText & $vDelim For $iCount = 1 To UBound($aSplit) - 1 If StringInStr($sText, $vDelim & $aSplit[$iCount] & $vDelim) Then $sText = StringReplace($sText,$aSplit[$iCount] & $vDelim, '') $iExtended = @extended If $iExtended > 1 Then $sNewString &= $aSplit[$iCount] & '*' & $iExtended & $vDelim Else $sNewString &= $aSplit[$iCount] & $vDelim EndIf EndIf Next Return StringTrimRight($sNewString, 1) EndFunc Func _MathDub($sText, $vDelim = ';') Local $aSplit1 = StringSplit($sText, $vDelim) Local $sNewString For $iCount = 1 To UBound($aSplit1) - 1 If StringInStr($aSplit1[$iCount], '*') Then Local $aSplit2 = StringSplit($aSplit1[$iCount], '*', 1) For $xCount = 1 To Number($aSplit2[2]) $sNewString &= $aSplit2[1] & $vDelim Next Else $sNewString &= $aSplit1[$iCount] & $vDelim EndIf Next Return StringTrimRight($sNewString, 1) EndFunc Exit Func dbg($msg) ConsoleWrite( $msg&@LF ) EndFunc test this^^ divdub = hi*2 mathdub = hi;hi , thanx for the other "udf" but i like it more with 2 simple functions Edited July 21, 2006 by Busti My UDF's : Startet on : 06.06.2006_CaseSearchOrReplaceStr();~> Searches OR Replaces a String,;~> With or Without Casesensivity Link to comment Share on other sites More sharing options...
Moderators SmOke_N Posted July 21, 2006 Moderators Share Posted July 21, 2006 How do we test it? What are the variables? Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer. Link to comment Share on other sites More sharing options...
Busti Posted July 21, 2006 Author Share Posted July 21, 2006 i edit it, sorry My UDF's : Startet on : 06.06.2006_CaseSearchOrReplaceStr();~> Searches OR Replaces a String,;~> With or Without Casesensivity Link to comment Share on other sites More sharing options...
Moderators SmOke_N Posted July 21, 2006 Moderators Share Posted July 21, 2006 Can you post $screencolors in quotes rather than a code box... the string is broken. Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer. Link to comment Share on other sites More sharing options...
Busti Posted July 21, 2006 Author Share Posted July 21, 2006 (edited) $_ScreenColors="555555;4D4D4D;7D7D7;292929;808080;292929;424242;292929;292929;161616;66DFE;;333333;4;666666;333 333;4D4D4D;292929;333333;292929;161616;771FE;333333;4;292929;;292929;424242;161616;333333;292929;161 616;872FE;292929;666666;424242;555555;4D4D4D;292929;292929;292929;161616;872FE;872FE;666666;161616;8 68686;292929;424242;161616;333333;161616;161616;872FE;872FE;333333;333333;555555;292929;333333;16161 6;292929;161616;872FE;872FE;872FE;292929;666666;161616;292929;161616;161616;292929;771FE;872FE;872FE ;872FE;333333;161616;161616;161616;161616;56BF8;56CFB;771FE;872FE;872FE;872FE;35EE9;361EA;261F0;465F 1;466F5;56BF8;56CFB;66DFE;572FF;872FE;872FE;35EE9;15EED;15EF1;161F4;262F6;368F8;56CFB;66DFE;572FF;57 2FF;572FF;35EE9;15BEE;15EF1;261F0;262F6;368F8;46AFB;36CFE;66DFE;572FF;572FF"$_ScreenColors="555555;4D4D4D;7D7D7;292929;808080;292929;424242;292929;292929;161616;66DFE;;333333;4;666666;3333 33;4D4D4D;292929;333333;292929;161616;771FE;333333;4;292929;;292929;424242;161616;333333;292929;1616 16;872FE;292929;666666;424242;555555;4D4D4D;292929;292929;292929;161616;872FE;872FE;666666;161616;86 8686;292929;424242;161616;333333;161616;161616;872FE;872FE;333333;333333;555555;292929;333333;161616 ;292929;161616;872FE;872FE;872FE;292929;666666;161616;292929;161616;161616;292929;771FE;872FE;872FE; 872FE;333333;161616;161616;161616;161616;56BF8;56CFB;771FE;872FE;872FE;872FE;35EE9;361EA;261F0;465F1 ;466F5;56BF8;56CFB;66DFE;572FF;872FE;872FE;35EE9;15EED;15EF1;161F4;262F6;368F8;56CFB;66DFE;572FF;572 FF;572FF;35EE9;15BEE;15EF1;261F0;262F6;368F8;46AFB;36CFE;66DFE;572FF;572FF" $_ScreenColors="555555;4D4D4D;7D7D7;292929;808080;292929;424242;292929;292929;161616;66DFE;;333333;4;666666;333333;4D4D4D;292929;333333;292929;161616;771FE;333333;4;292929;;292929;424242;161616;333333;292929;161616;872FE;292929;666666;424242;555555;4D4D4D;292929;292929;292929;161616;872FE;872FE;666666;161616;868686;292929;424242;161616;333333;161616;161616;872FE;872FE;333333;333333;555555;292929;333333;161616;292929;161616;872FE;872FE;872FE;292929;666666;161616;292929;161616;161616;292929;771FE;872FE;872FE;872FE;333333;161616;161616;161616;161616;56BF8;56CFB;771FE;872FE;872FE;872FE;35EE9;361EA;261F0;465F1;466F5;56BF8;56CFB;66DFE;572FF;872FE;872FE;35EE9;15EED;15EF1;161F4;262F6;368F8;56CFB;66DFE;572FF;572FF;572FF;35EE9;15BEE;15EF1;261F0;262F6;368F8;46AFB;36CFE;66DFE;572FF;572FF" oÝ÷ ÛMúIÊÞzp¨ì $_ScreenColors = '555555;4D4D4D;7D7D7;292929;808080;292929;424242;292929;292929;161616;66DFE;;333333;4;666666;3333 33;4D4D4D;292929;333333;292929;161616;771FE;333333;4;292929;;292929;424242;161616;333333;292929;1616 16;872FE;292929;666666;424242;555555;4D4D4D;292929;292929;292929;161616;872FE;872FE;666666;161616;86 8686;292929;424242;161616;333333;161616;161616;872FE;872FE;333333;333333;555555;292929;333333;161616 ;292929;161616;872FE;872FE;872FE;292929;666666;161616;292929;161616;161616;292929;771FE;872FE;872FE; 872FE;333333;161616;161616;161616;161616;56BF8;56CFB;771FE;872FE;872FE;872FE;35EE9;361EA;261F0;465F1 ;466F5;56BF8;56CFB;66DFE;572FF;872FE;872FE;35EE9;15EED;15EF1;161F4;262F6;368F8;56CFB;66DFE;572FF;572 FF;572FF;35EE9;15BEE;15EF1;261F0;262F6;368F8;46AFB;36CFE;66DFE;572FF;572FF' $_ScreenColors = '555555;4D4D4D;7D7D7;292929;808080;292929;424242;292929;292929;161616;66DFE;;333333;4;666666;3333 33;4D4D4D;292929;333333;292929;161616;771FE;333333;4;292929;;292929;424242;161616;333333;292929;1616 16;872FE;292929;666666;424242;555555;4D4D4D;292929;292929;292929;161616;872FE;872FE;666666;161616;86 8686;292929;424242;161616;333333;161616;161616;872FE;872FE;333333;333333;555555;292929;333333;161616 ;292929;161616;872FE;872FE;872FE;292929;666666;161616;292929;161616;161616;292929;771FE;872FE;872FE; 872FE;333333;161616;161616;161616;161616;56BF8;56CFB;771FE;872FE;872FE;872FE;35EE9;361EA;261F0;465F1 ;466F5;56BF8;56CFB;66DFE;572FF;872FE;872FE;35EE9;15EED;15EF1;161F4;262F6;368F8;56CFB;66DFE;572FF;572 FF;572FF;35EE9;15BEE;15EF1;261F0;262F6;368F8;46AFB;36CFE;66DFE;572FF;572FF' hm ? any 1 works :/ ? Edited July 21, 2006 by Busti My UDF's : Startet on : 06.06.2006_CaseSearchOrReplaceStr();~> Searches OR Replaces a String,;~> With or Without Casesensivity Link to comment Share on other sites More sharing options...
Moderators SmOke_N Posted July 21, 2006 Moderators Share Posted July 21, 2006 (edited) It's not the script that broke it... it's this:66DFE;;333333 292929;;292929You have 2 semi colons there with nothing inbetween them. This works (If the code tags don't break it) Edit: Dammit the code tags broke it. Uploaded: BustiHelp.au3 Edited July 21, 2006 by SmOke_N Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer. Link to comment Share on other sites More sharing options...
Busti Posted July 21, 2006 Author Share Posted July 21, 2006 (edited) i wantet to format my hex codes and remove the 00 bevore the number @ hex codes : Func oo_format($avHEX) $avHexSplit=StringSplit( $avHEX , "" ) For $i=1 To $avHexSplit[0] If $avHexSplit[$i] <> 0 Then ExitLoop $avHexSplit[$i] = "" Next Local $retmsg="" For $iret=1 To $avHexSplit[0] $retmsg &= $avHexSplit[$iret] Next Return $retmsg EndFunc Func _ScanScreen( $x1 , $y1 , $x2, $y2, $delim=";" ) If $x2 < $x1 Or $y2 < $y1 Then Return -1 Local $ret="" For $x = $x1 To $x2 For $y = $y1 To $y2 $n_form = oo_format(Hex(PixelGetColor($x,$y))) ;$n_form = PixelGetColor($x,$y) $ret &= $n_form&$delim Next Next Return StringTrimRight($ret,1) EndFunc but this wont work right ? Edited July 21, 2006 by Busti My UDF's : Startet on : 06.06.2006_CaseSearchOrReplaceStr();~> Searches OR Replaces a String,;~> With or Without Casesensivity Link to comment Share on other sites More sharing options...
Moderators SmOke_N Posted July 21, 2006 Moderators Share Posted July 21, 2006 (edited) Return StringTrimRight(StringReplace($ret, ';;', ';', 0, 1),1)Maybe? Edit: I should say that I'm answering this question completely blind, because I have absolutely no idea what your asking now. Edited July 21, 2006 by SmOke_N Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer. 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