venerdì 16 maggio - 15:51
Google
 
Menù
  Home
  Come nasce IRC-Zone
  Glossario Informatico
  Servizio FreeBot
  News
  I nostri progetti
  I nostri servizi
  Partners
  Diventa un Partner

IRC
  Cos'è IRC
  Storia di IRC
  Netiquette su IRC
  Emoticons
  Gergo della chat
  Lista Servers
  RFC 1459
  Shell Hosting

mIRC
  Cos'è il mIRC
  FAQ mIRC
  Configurazione mIRC
  Download mIRC
  Novità
  Script Stranieri
  Script Italiani
  MTS
  MTS Engine

mIRC Addon
  mIRC addon Audio
  mIRC addon SMS
  mIRC addon Grafica
  mIRC addon Utility
  mIRC addon Uso Bot

Client IRC
  Client IRC Linux
  Client IRC Mac
  Client IRC Win

XChat
  Cos'è XChat
  XChat per Win
  XChat per Unix

KVirc
  Cos'è KVirc
  FAQ KVirc
  Installazione su Linux
  KVirc Scripting
  KVirc per Mac
  KVirc per Win
  KVirc per Unix
  KVirc addon

Eggdrop/Windrop
  Cos'è un Eggdrop
  Download Eggdrop
  Configurazione Eggdrop
  Download Windrop
  Installazione Windrop

Tcl
  Download TCL
  Tutorial TCL scripting
  Documenti/Guide

BNC
  Cos'è un psyBNC
  Download psyBNC
  Configurazione psyBNC
  Download sBNC
  Configurazione sBNC

Linkaci!

Credits


Statistiche
Ip: 38.103.63.16
Downloads: 248584 files
Totale: 290381 MB




Identificatori Token

Autore: Kaesar83Data: 2005-08-28
Modificato: 2005-09-06 Letture: 587
Torna indietroStampa articoloInvia ad un amico

La conoscenza dei token è ormai diventata quasi indispensabile nel mircscripting medio\avanzato.
Ovviamente per chi è alle prime armi, consiglio di tralasciarli e concentrarsi su altri argomenti del linguaggio.
I token sono delle stringhe di qualsiasi natura (numeri,lettere,ect) separate l'un l'altra tramite un carattere particolare,"separatore",scelto arbitrariamente dall'utente. (numero,lettera,caratteri di punteggiatura,ect).
Ecco una serie di piccoli esempi di Token:

- Ciao come stai <- "Ciao" è un token, "come" è un token, "stai" è un token. Il carattere speciale (separatore) è in questo caso lo "spazio" che appunto differenzia le stringhe tra di loro.
- Il.mio.nick.è.Sp <- "Il "mio" "nick" "è" "Sp" rappresentano i 4 token. Il carattere speciale è il "." (punto)
- Ecco0Un0Separatore0numerico <- "Ecco" "Un" "Separatore" "Numerico" i token. Il carattere speciale è lo zero (0)

Adesso cercherò di analizzare tutti gli identificatori tokens a nostra disposizione.

$addtok 
sintassi: $addtok(text,token,C)
Permette di aggiungere un token all'interno del testo, solo se questo non è già presente nello stesso.
Es.:

//echo -a $addtok(a.b.c.d,e,46)
questo aggiungerà la lettera e al testo a.b.c.d ottenendo come risultato finale a.b.c.d.e quel 46 è il codice ascii del punto (cosiddetto delimitatore) che divide le varie lettere, ci fossero stati spazi avremmo dovuto inserire il 32 (codice ascii dello spazio)

//echo -a $addtok(c i a,o,32)
questo aggiungerà la o al testo c i a ottenendo quindi c i a o semplice no?

$deltok
sintassi: $deltok(text,N-N2,C)
Permette di cancellare l'Nesimo token dal testo.
Es.:

//echo -a $deltok(a.b.c.d,3,46) 
questo cancellerà la lettera in "terza posizione" quindi il risultato sarà a.b.d

//echo -a $deltok(a.b.c.d.e,2-4,46)
questo invece cancellerà l'intervallo di lettere che va dalla seconda alla quarta quindi avremo un risultato di questo tipo a.e

Per un esempio un pò più pratico invece vi consiglio
//echo -a $deltok($address($me,2),1,64) permetterà di cancellare la prima parte della mask, cioè quella prima della @ (il quale valore ascii è appunto 64) ottenendo come risultato unicamente l'host della vostra mask.

$findtok
sintassi: $findtok(text,token,N,C)
Permette di trovare la posizione di un token all'interno di un testo.
Es.:

//echo -a $findtok(a.b.c.d,c,1,46)
Questo restituirà 3, cioè la posizione del primo token c all'interno del testo a.b.c.d, se avessimo specificato il 2 al psoto del 1, in un testo con più c, ad esempio //echo -a $findtok(a.b.c.d.c.e,c,1,46) avremmo avuto come risultato il numero 5, cioè la posizione della seconda c

//echo -a $findtok(a.b.c.d,e,1,46)
Questo restituirà $null in quanto la e non è presente nel testo

Specificando lo 0, invece si ottiene il numero di volte totale che è preente un token all'interno del testo //echo -a $findtok(k.a.e.s.a.r,a,0,46) si ottiene 2, cioè son presenti due a all'interno del testo k.a.e.s.a.r

$gettok
sintassi: $gettok(text,N,C)
Restituisce l'ennesimo token nel testo

//echo -a $gettok(a.b.c.d.e,3,46)
Questo restituirà c proprio perchè in terza posizione nel testo, è presente c

//echo -a $gettok(a.b.c.d.e,9,46) 
Restituirà $null perchè non esiste una posizione 9 in quanto il testo è costituito da 5 posizioni totali.

//echo -a $gettok(a.b.c.d.e,2-,46) 
Restituirà il testo che va dal secondo token in poi, cioè avremo b.c.d.e

//echo -a $gettok(a.b.c.d.e,2-4,46)
 
Restituirà il testo compreso tra il secondo ed il quarto token, cioè b.c.d

E' possibile anche specificare numeri negativi, in questo modo si partirà dall'ultimo token e non dal primo.
Se facciamo //echo -a $gettok(a.b.c.d.e,-2,46) avremo d, cioè il secondo token a partire da destra (dalla fine del testo)

$instok
sintassi: $instok(text,token,N,C)
Permette di inserire un token nell'ennesima posizione nel testo

//echo -a $instok(a.b.d,c,3,46) 
Questo inserirà il token c nella posizione 3, cioè subito dopo b, avremo così un risultato finale di questo tipo a.b.c.d

E' possibile inserire anche un numero negativo.
Questo come nel precedente identificatore permetterà di partire dall'ultima lettera invece che dalla prima.
Provando //echo -a $instok(a.b.d,c,-2,46) constateremo che il risultato sarà a.c.b.d in più scrivendo //echo -a $instok(a.b.d,c,0,46) avremo un risultato a.b.d.c 

$istok
sintassi: $istok(text,token,C)
Questo identificatore serve per controllare la presenza di un token all'interno del testo restituendo $true in caso affermativo e $false in caso negativo

//echo -a $istok(k.a.e.s.a.r,a,46)
In questo esempio avremo chiaramente il risultato $true, in quanto la a è presente nel testo specificato

$matchok
sintassi: $matchtok(tokens,string,N,C)
Restituisce il token specificando una stringa contenuta nel token stesso

//echo -a $matchtok(one two three, e, 0, 32)
In questo caso restituisce il numero totale di token presenti che contengono la stringa e

//echo -a $matchtok(one two three, e, 1, 32)
In questo caso il risultato sarà one, cioè il primo token che contiene la stringa e, se avessi inserito
2 al posto di 1 il risultato sarebbe stato three, cioè il secondo token contenente la stringa e

$numtok
sintassi: $numtok(text,C)
Restituisce il numero di tokens presenti nel testo

//echo -a $numtok(k.a.e.s.a.r,46)
Il risultato sarà 6

$puttok
sintassi: $puttok(text,token,N,C)
Sovrascrive l'ennesimo token presente nel testo con un nuovo token

//echo -a $puttok(a.b.c.d,e,2,46)
Questo permette di sostituire il token in seconda posizione con la lettera e ottenendo come risultato a.e.c.d

E' possibile anche specificare valori negativi come nei precedenti identificatori

$remtok
sintassi: $remtok(text,token,N,C)
Permette di rimuovere l'ennesimo token dal testo

//echo -a $remtok(a.b.c.d,b,1,46) 
Questo restituirà a.c.d, cioè rimuove il token b

//echo -a $remtok(k.a.e.s.a.r,a,2,46)
Questo eliminerà il secondo token a, quindi otterremo k.a.e.s.r

//echo -a $remtok(a.b.c.d,e,1,46) 
Questo restituirà soltanto a.b.c.d in quanto non è presente alcun token e quindi non può rimuovere nulla

$reptok
sintassi: $reptok(text,token,new,N,C)
Rimpiazza l'ennesimo token nel testo con un nuovo token

//echo -a $reptok(a.b.c.d,b,e,1,46) 
Questo rimpiazza il token b con e quindi avremo come risultato finale a.e.c.d

//echo -a $reptok(a.b.a.d,a,c,2,46) 
Questo rimpiazza il secondo token a con c restituendo come risultato finale a.b.c.d

$sortok
sintassi: $sorttok(text,C,ncra)
Ordina i tokens nel testo

//echo -a $sorttok(e.d.c.b.a,46)
Il risultato ottenuto sarà a.b.c.d.e, cioè ordinerà semplicemente in ordine alfabetico

//echo -a $sorttok(1.3.5.2.4,46,nr)
Questo ordinerà i token numericamente ma in senso inverso, ottenendo 5.4.3.2.1

Di Default l'ordinamento è alfabetico, le flags che è possibile specificare sono 4:

n = ordine numerico
r = ordine inverso
c = ordine nick in canale
a = ordine alfanumerico

$wildtok
sintassi: $wildtok(tokens,wildstring,N,C)
Restituisce l'ennesimo token che comprende la stringa wildcard

//echo -a $wildtok(one two three, t*, 0, 32)
Questo restituirà 2, cioè il numero totale dei tokens che iniziano per t

//echo -a $wildtok(one two three, t*e, 1, 32)
Questo com'è facilmente intuibile restituirà il primo token che inizia per t e finisce per e, quindi escludendo two che non contiene una e è facile capire che il risultato finale sarà three

Con questo ho finito, spero abbia fatto un pò di chiarezza nella vostra mente sugli identificatori tokens :)
Alla prossima





Links utili

Newsletter
Iscriviti
Cancellati

Ci sono 57 iscritti

In rilievo..
  JackSMS v3
  Venom Script Lite

Documenti/Guide
  Sicurezza in rete
  Cos'è SSL
  FAQ Bot
  Documenti su IRC
  FAQ Ident
  RFC 2810
  RFC 2811
  IRCx RFC

Informatica libera
  Gli Hoaxes
  Hoaxes report
  Documenti vari
  CensorWare
  Windows
  Linux

mIRC Scripting
  Codice ASCII
  Snippet mIRC scripting
  Tutorial mIRC scripting
  Dll per mIRC
  Utilities

IRCd
  Cos'è un IRCd
  Download Unreal
  Download Hybrid 6
  Download Hybrid 7
  Download Ultimate
  Download Bahamut
  Configurazione IRCd

IRC Services
  Cosa sono i Services
  Download Anope
  Download Epona
  Ircservices 5.0
  Ircservices 5.1
  Configurazione Epona
  Configurazione Anope
  Comandi ChanServ
  Comandi NickServ
  Comandi MemoServ

NeoStats
  Cosa sono i NeoStats
  Download NeoStats
  Configurazione NeoStats
  Download Moduli

IPv6
  Cos'è IPv6
  IPv6 su Win2000
  IPv6 su WinXP
  IPv6 su Linux
  IPv6 su mIRC e Xchat

Programmazione
  Tutorial C++
  Tutorial C
  Compilatori C/C++

Altro
  Contatti
  Banners Gallery

RSS Feed




Progetti
Starlight
Linux

Sponsor
Eushells.net
TradeShell.it
EasyShell.org



©2004+ IRC-Zone | Webmaster | Sitemap
Created by Cesare 'Kaesar83' Lasorella
Designed by Manuel 'erkokki' Cabras
IRC-Zone non è responsabile del contenuto dei siti linkati
Pagina creata in: 0.049 sec con 26 queries