Scripting Operators » History » Revision 46
Revision 45 (Mr. BS, 01/20/2016 03:08 AM) → Revision 46/64 (Per Amundsen, 03/21/2016 11:35 AM)
{{>toc}} h1. Scripting Operators AdiIRC supports various operators for use in [[/if]] [[/else]] [[/elseif]] [[/while]] and [[$iif]] expressions. [[/var]], [[/set]], [[$calc]] supports it's own set of [[Arithmetic Operators|arithmetic expression]]. All operators supports the "!" sign to reverse the operation. Operators in bold is AdiIRC only. *Example* <pre> ; check if 5 is lower than 4. if (5 < 4) echo true else echo false ; Reverse check if 5 is lower than 4 same, as 5 > 4. if (5 !< 4) echo true else echo false </pre> h2. Math Comparison Operators |_.Syntax |_.Name |_.Result | |=. <notextile>%x == %y</notextile> <notextile>%x = %y</notextile> <notextile>%x != %y</notextile> <notextile>%x !== %y</notextile> <notextile>%x < %y</notextile> <notextile>%x > %y</notextile> <notextile>%x <= %y</notextile> <notextile>%x >= %y</notextile> <notextile>%x // %y</notextile> <notextile>%x \\ %y</notextile> <notextile>%x & %y</notextile> |^. Equal Equal Not equal Not equal Less than Greater than Less than or equal to Greater than or equal to Multiple Of (Divides) Not Multiple Of (Not Divides) Bitwise And |^. True, if %x is equal to %y. True, if %x is equal to %y. True, if %x is not equal to %y. True, if %x is not equal to %y. True, if %x is strictly less than %y. True, if %x is strictly greater than %y. True, if %x is less than or equal to %y. True, if %x is greater than or equal to %y. True, if %x divides %y. True, if %x does not divides %y. True, if (bit representation of) %x AND %y is a none zero. | h2. String Comparison Operators |_.Syntax |_.Name |_.Result | |=. %x isin %y %x isincs %y %x iswm %y %x iswmcs %y %x isnum %x isnum N %x isnum N- %x isnum N-M %x isletter %x isletter N %x isalnum %x isalpha %x islower %x isupper |^. Is In Is In (case sensitive) Wildcard Matching Wildcard Matching (case sensitive) Is Digit Is Digit, Equal to Is Digit, Greater than or equal to Is Digit, in Range Is a Letter Is a Letter In A List Alphanumeric Characters Alphabetic Characters All lower case letters All upper case letters |^. True, if %x is fully found inside %y. True, if %x is fully found inside (case sensitive) %y. True, if wildcard string %x matches %y. True, if wildcard string %x matches (case sensitive) %y. True, if %x is a number. True, if %x is number N. True, if %x is number N or greater. True, if %x is a number between N and M (inclusively). True, if %x is a letter. True, if %x is a letter in a list of letters. True, if %x contains only alphabetic or numeric characters. True, if %x contains only alphabetic characters. True, if %x contains only lower case letters. True, if %x contains only upper case letters. | h2. Lexicographical String Comparison Operators |_.Syntax |_.Name |_.Result | |=. <notextile>a == b</notextile> <notextile >a === b</notextile> <notextile >str1 == str2</notextile> <notextile >str1 === str2</notextile> a < b a > b str1 < str2 str1 > str2 |^. Case insensitive character comparison Case sensitive character comparison Case insensitive String comparison Case sensitive String comparison Lexicographically Less Than Lexicographically Greater Than Lexicographically Less Than Lexicographically Greater Than |^. True, if character a is equal to character b, case insensitive. True, if character a is equal to character b, case sensitive. True, if str1 equals str2 in a case insensitive manner. True, if str1 equals str2 in a case sensitive manner. True, if the [[$asc]](a) comes before [[$asc]](b) True, if the [[$asc]](a) comes after [[$asc]](b) True, if str1 comes before str2 True, if str1 comes after str2 | h2. Channel-related Operators |_.Syntax |_.Name |_.Result | |=. %x ison %y %x isop %y %x ishop %y %x ishelp %y *%x isadmin %y* *%x isowner %y* %x isvoice %y %x isreg %y %x ischan %x isban %y %x isinvite %y %x isexcept %y |^. Is On Is an Operator Is a Halfop is a Protected Operator Is a Channel Owner Is a Voice Is a Regular Is a Channel Is a ban Ia a Invite Is a Except |^. True, if nick %x is on channel %y. True, if nick %x is an operators on channel %y. True, if nick %x is a halfop on channel %y. True, if nick %x is a halfop on channel %y. True, if nick %x is a protected/admin operator on channel %y. True, if nick %x is a channel owner on channel %y. True, if nick %x is a voice on channel %y. True, if nick %x is a regular user on channel %y. True, if channel %x is a channel you are on. True, if ban address %x is a ban on channel %y. (taken from IBL) True, if invite address %x is a invite on channel %y. (taken from IIL) True, if except address %x is a except on channel %y. (taken from IEL) | h2. List-related Operators |_.Syntax |_.Name |_.Result | |=. %x isaop %x isaop %y %x isavoice %x isavoice %y %x isignore %x isignore %y %x isnotify |^. TODO TODO TODO TODO In Ignore List In Ignore List For Type TODO |^. TODO TODO TODO TODO True, if host %x is in the ignore list. True, if host %x is in the ignore list for type %y. TODO | h2. Other Operators |_.Syntax |_.Name |_.Result | |=. *%x isurl* |^. Is a url |^. True, if %x is a url. |