Aller au contenu

Messages recommandés

Posté(e)

Salut !

Je vais aujourd'hui vous parler (très brièvement) des expressions régulières, je ne compte pas vous expliquer ce que c'est ni comment cela marche car un tutoriel est très bien faut et c'est comme cela que j'ai appris (bien sur je ne m'y connais pas grandement). Si je pouvais résumer cela sert à manipuler des textes/suites/strings :')

Les regex sont présentes dans d'autres languages de programmation (comme le PHP et surement le Java), elles vous seront donc utiles si vous continuez le code dans d'autres languages !

Tuto partie 1 -> https://openclassrooms.com/courses/concevez-votre-site-web-avec-php-et-mysql/les-expressions-regulieres-partie-1-2

Parti 2 -> https://openclassrooms.com/courses/concevez-votre-site-web-avec-php-et-mysql/les-expressions-regulieres-partie-2-2-2

 

Pour utiliser les Regex il vous faudra SkQuery et ceci est la page des Regex SkUnity -> https://www.skunity.com/search?search=regex

 

Les regex sont envoyé sous forme de tableau, il est possible de les retransformer en variable texte.

 

Pour vous montrer à quoi cela ressemble et comment cela peut être utile je vais vous montrer 2 exemples:

 

Le 1er pour séparer l'heure et la date:

set {_dateReg::*} to groups 0 of "%now%" matched to "..?\/..?\/.."
set {_date} to "%{_dateReg::1}%"
replace all "/" with "-" in {_date}

Au départ le "now" ressemble à cela "1/3/16 3:25 PM" et maintenant nous l'avons transformé en "1-3-16" :D

La regex c'est "..?\/..?\/.." les points représentent tous les caractères que ce soit des nombres ou des lettres, les points d'interrogations signifient que les points les précédents ne sont pas obligatoires peuvent être présent ou non, ensuite les \ sont la pour dire que les / ne sont pas du code.

 

La 2nd Regex c'est pour extraire seulement les enchantements des informations d'un item

if "%player's tool%" contains "named":
set {_itemEnchantements::*} to groups 1 of "%player's tool%" matched to "of (.*) named"
else:
set {_itemEnchantements::*} to groups 1 of "%player's tool%" matched to "of (.*)"
set {_enchantements} to {_groups::1}
replace all "," in {_enchantements} with " "
replace all "and" in {_enchantements} with ""
replace all "  " in {_enchantements} with "/"

Par exemple si mon item c'est cela: "diamond sword of Sharpness 5, Fire Aspect 2 and Looting 3 named "Ya" "

Mon regex va transformer en cela: "Sharpness 5/Fire Aspect 2/Looting 3"

Ce qui est extrêmement pratique pour ne récupérer que les enchantements (ce qui n'est pas possible autrement je crois), par exemple, ensuite nous pourrions faire une regex pour ne récupérer que le premier enchantement !

L'étoile désigne le fait que l'élément point peut être répété.

 

Je vous laisses donc imaginer tout ce que l'on peut faire avec et à quoi cela sert ! :D

 

Testez vos regex et leurs effets ici: https://regex101.com/

 

Edit:

Je viens de me rendre compte que pour récupérer les enchantements, enfin tout ce que j'ai fait il y a un truc Skript qui se nomme "split" -.-

Mais pourquoi faire simple quand on faire compliqué ?! :D

https://www.skunity.com/search?search=split

  • 3 semaines après...

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.