SPLN Utilisateur confirmé: Rang ***
Messages : 588 Localisation : Sur son ordinateur *vous vois* arrêtez de me regarder comme ça Projet Actuel : En quête de projet(s)!
Mes projets:
SP Lecteur Multimedia (Stand by)
S-Portable Graphics (demo1.8 is out! demo2.0 is planned)
SSB RPG (Stand by)
| Sujet: string_sep_ get / set / add _arg Lun 30 Jan 2012 - 11:05 | |
| Alors grosso-modo ces scripts servent à récupérer des "arguments" ou plutôt du texte séparé par un séparateur et je peux choisir quel argument je veux récupérer ou modifier. Personnellement je l'ai appelé comme ça car quand je créer un "type" de fichier ou des listes j'ai tendance à utiliser des séparateurs du genre chr(0) ou "|", pour séparer des infos (dans une même ligne dans le cas des listes). - string_sep_get_arg a écrit:
var a, c, ch, i, l, r, sep, t; t = argument0 // text sep = argument1 // sep a = argument2 // arg n° l = string_length( t )
if (a > string_count( sep, t ) ) or (a < 0) { show_error("Aucun argument trouvé.",false) ; return "" }
c = 0 // sep count r = ""
for ( i = 1 ; c <= a and i <= l ; i += 1 ) {
ch = string_copy( t, i, 1 ) if ( c == a && ch != sep ) { r += ch } if ( ch == sep ) { c += 1 } }
return r; - string_sep_set_arg a écrit:
var a, c, ch, i, l, p1, p2, sep, t, v; t = argument0 // text sep = argument1 // sep a = argument2 // arg n° v = string( argument3 ) // value l = string_length( t )
c = 0 // sep count p1 = "" p2 = ""
for ( i = 1 ; i != l+1 ; i += 1 ) { ch = string_copy( t, i, 1) if ( c < a ) { p1 += ch } if ( c > a ) { p2 += ch } if ( ch == sep ) { if ( c == a ) { p2 += ch } c += 1 } }
return ( p1 + v + p2 ); - string_sep_add_arg a écrit:
var a, c, ch, i, l, p1, p2, sep, t, v; t = argument0 // text sep = argument1 // sep a = argument2 // arg n° v = string( argument3 ) // value l = string_length( t )
c = 0 // sep count p1 = "" p2 = ""
for ( i = 1 ; i <= l ; i += 1 ) { ch = string_copy( t, i, 1) if ( c < a ) { if ( i == l ) { p2 += ch + ( a - c )*sep + v } else { p1 += ch } } if ( c > a ) { p2 += ch } if ( c == a ) { p1 += v + sep + ch ; c += 1 } if ( ch == sep && c != a+1 ) {
c += 1 } }
return ( p1 + p2 ); Exemples:string_sep_get_arg("21|23|42","|",0) = "21" string_sep_set_arg("21|23|42","|",0,"18") = "18|23|42" Par contre, ne pas faire: string_sep_set_arg("21|23|42","|",4,18) sinon = "18|23|4218" Mais, vous pouvez faire: string_sep_get_arg("||","|",1) = "" string_sep_set_arg("||","|",1,"02") = "|02|" Vous pouvez également ajouter des arguments avec: string_sep_add_arg("21|23|42","|",1,"22") = "21|22|23|42" string_sep_add_arg("0|1","|",10,"10") = "0|1|||||||||10" EDIT: J'ai optimisé mes scripts en remplaçant les boucles do en for et en ajoutant un script |
|
master47 Utilisateur confirmé: Rang *****
Messages : 2368 Projet Actuel :
-------------------
> PacWars
> The Perfect Pattern Studio
| Sujet: Re: string_sep_ get / set / add _arg Lun 30 Jan 2012 - 14:56 | |
| |
|
SPLN Utilisateur confirmé: Rang ***
Messages : 588 Localisation : Sur son ordinateur *vous vois* arrêtez de me regarder comme ça Projet Actuel : En quête de projet(s)!
Mes projets:
SP Lecteur Multimedia (Stand by)
S-Portable Graphics (demo1.8 is out! demo2.0 is planned)
SSB RPG (Stand by)
| Sujet: Re: string_sep_ get / set / add _arg Lun 30 Jan 2012 - 15:07 | |
| J'ai précisé pour la création de fichier . C'est à dire que par exemple si je fais un système de sauvegarde customisé ou alors un fichier ou je stocke des données. Je pourrais récupérer les données au endroit voulu avec ce genre de système. Et oui j'ai fait cette expérience avec GM et un show_message() :/. |
|
Contenu sponsorisé
| Sujet: Re: string_sep_ get / set / add _arg | |
| |
|