From WikiChip
Difference between revisions of "mirc/identifiers/$istok"
< mirc‎ | identifiers

(Examples)
m (Fix typo)
 
(3 intermediate revisions by one other user not shown)
Line 16: Line 16:
  
 
== Examples ==
 
== Examples ==
<pre>//if ($event isin CONNECT JOIN) goto LABEL</pre>
+
<pre>//if ($event isin DISCONNECT JOIN) goto LABEL</pre>
  
If this alias is executed in the {{mIRC|on events/on CONNECT|ON CONNECT}} and {{mIRC|on events/on DISCONNECT|ON DISCONNECT}} events, this triggers on BOTH events because {{mIRC|isin|isin}} matches on CONNECT being a substring of DISCONNECT. Better is:
+
If this alias is executed in the {{mIRC|on connect}} and {{mIRC|on disconnect}} events, this triggers on BOTH events because {{mIRC|isin|isin}} matches on CONNECT being a substring of DISCONNECT. Better is:
 
<pre>//if ($istok(CONNECT JOIN,$event,32)) goto LABEL
 
<pre>//if ($istok(CONNECT JOIN,$event,32)) goto LABEL
 
; searches for exact match of the value of the $event string against the tokens in the space-delimited list of tokens.
 
; searches for exact match of the value of the $event string against the tokens in the space-delimited list of tokens.
Line 29: Line 29:
 
<pre>//echo -a $asctime($ctime,dddd) $istok(SUNDAY MONDAY TUESDAY WEDNESDAY THURSDAY FRIDAY SATURDAY,$asctime($ctime,dddd),32)
 
<pre>//echo -a $asctime($ctime,dddd) $istok(SUNDAY MONDAY TUESDAY WEDNESDAY THURSDAY FRIDAY SATURDAY,$asctime($ctime,dddd),32)
 
; returns $true because match is case-insensitive
 
; returns $true because match is case-insensitive
</pre>
 
 
== More information ==
 
 
$istok (and $istokcs) are actually specials cases of $findtok/$findtokcs, they can take 4 parameters without returning an error and it even brings new functionnality:
 
 
<pre>$istok(a.b.c.d.d.d.e,d,3,46) returns $true
 
$istok(a.b.c.d.d.d.e,d,4,46) returns $false because there are only 3 tokens of "d".
 
 
</pre>
 
</pre>
  

Latest revision as of 12:38, 2 May 2020

$istok returns $true if a matching token exists, or $false if it does not.


Synopsis[edit]

$istok(<LIST>,<Token>,<C>)

Parameters[edit]

LIST: - Text list delimited by a character into tokens
Token: - The token searched for in LIST
C: - The $asc() value which splits TEXT into tokens

The search is for entire token, not partials, and the search is NOT case-sensitive. If you need the token search to be case-sensitive, use $istokcs which has the same syntax}}

Properties[edit]

None

Examples[edit]

//if ($event isin DISCONNECT JOIN) goto LABEL

If this alias is executed in the on connect and on disconnect events, this triggers on BOTH events because isin matches on CONNECT being a substring of DISCONNECT. Better is:

//if ($istok(CONNECT JOIN,$event,32)) goto LABEL
; searches for exact match of the value of the $event string against the tokens in the space-delimited list of tokens.
//var %filename spreadsheet.xls | var %filetype $gettok($noqt(%filename),-1,46) | echo -a %filetype $istok(xlsx xlsm,%filetype,32)
; returns false because $istok does not match the substring xls against the token xlsx
//echo -a $asctime($ctime,dddd) $istok(SUNDAY MONDAY TUESDAY WEDNESDAY THURSDAY FRIDAY SATURDAY,$asctime($ctime,dddd),32)
; returns $true because match is case-insensitive

Compatibility[edit]

Added: mIRC v5.5
Added on: 08 Jan 1999
Note: Unless otherwise stated, this was the date of original functionality.
Further enhancements may have been made in later versions.


See also[edit]

[Expand]
v · d · e mIRC identifier list