New name for regexp capturing groups

This commit is contained in:
nemunaire 2022-12-10 14:37:39 +01:00
parent 41156db3aa
commit d51d91b9bb
5 changed files with 11 additions and 11 deletions

View File

@ -90,7 +90,7 @@ Voici un aperçu des propriétés disponibles :
* `showlines = false` : (facultatif, par défaut : `false`) lorsque le drapeau est un tableau et que `showlines` est vrai, le nombre d'éléments du tableau sera donné au participant, sinon il devra déterminer lui-même le nombre d'éléments à trouver (pour l'instant cette option est limitée à un tableau de 9 éléments maximum, c'est normal si ça bug au delà, demandez-moi si vous avez besoin de plus) ;
* `bonus_gain = 33` : (facultatif) donne des points supplémentaire si complété ;
* `ordered = false` : (facultatif, par défaut : `false`) ignore l'ordre dans lequels les éléments du tableau sont passés ;
* `validator_regexp = "^(?:sudo +)?(.*)$"` : (facultatif) expression rationnelle dont les groupes capturés serviront comme chaîne à valider (notez que `?:` au début d'un groupe ne le capturera pas) ;
* `capture_regexp = "^(?:sudo +)?(.*)$"` : (facultatif) expression rationnelle dont les groupes capturés serviront comme chaîne à valider (notez que `?:` au début d'un groupe ne le capturera pas) ;
* `casesensitive = true` : (facultatif, par défaut : `false`) prend en compte la casse de ce drapeau ;
* `placeholder = "dd/mm/yyyy"` : (facultatif) chaîne de caractères initiale placée dans le champ du formulaire, idéale pour donner une indication de format ;
* `help = "Complément"` : (facultatif) petit paragraphe placé sous le champ du formulaire, idéal pour donner une indication complémentaire ;
@ -103,7 +103,7 @@ Voici un aperçu des propriétés disponibles :
+ `value = true` (facultatif, par défaut `false`, sauf si `raw` est précisé) : valeur attendue pour ce choix,
+ `raw = "Justification"` (nécessaire pour un [QCM justifié]({{< relref "/responses/mcq_justified.md" >}})) : utilisez une chaîne de caractères (notez qu'il n'est pas possible de combiner des réponses vraies justifiées et non justifiées),
+ `help = "Flag correspondant"` : (facultatif) indication affichée dans le champ de texte des QCM justifiés,
+ ... toutes les autres propriétés applicables à un flag simple peuvent être utilisées : `ordered`, `validator_regexp`, `casesensitive`, ... ;
+ ... toutes les autres propriétés applicables à un flag simple peuvent être utilisées : `ordered`, `capture_regexp`, `casesensitive`, ... ;
## Dépendances entre flags

View File

@ -62,7 +62,7 @@ label
raw
: [drapeau]({{< relref "/responses/simple.md" >}}) ou [tableau de drapeaux]({{< relref "/responses/vector.md" >}}) exact à trouver ;
validator_regexp
capture_regexp
: (facultatif) [expression rationnelle]({{< relref "/responses/simple.md#flag-modulable" >}}) dont les groupes capturés serviront comme chaîne à valider (notez que `?:` au début d'un groupe ne le capturera pas) ;
casesensitive

View File

@ -67,7 +67,7 @@ Car il n'est pas possible d'avoir un hash qui valide à la fois `choux` et
`pomme de terre`.
{{% /notice %}}
On utilise l'attribut `validator_regexp` pour établir une expression rationnelle
On utilise l'attribut `capture_regexp` pour établir une expression rationnelle
qui servira à sélectionner les parties significatives de la réponse.
Par exemple :
@ -75,7 +75,7 @@ Par exemple :
[[flag]]
label = "Heure de l'exfiltration"
raw = '11:22:33+02:00'
validator_regexp = "([0-9]{1,2}):([0-9]{1,2}):[0-9]{1,2}"
capture_regexp = "([0-9]{1,2}):([0-9]{1,2}):[0-9]{1,2}"
```
Ici, nous demandons l'heure de l'exfiltration, mais plusieurs journaux
@ -88,7 +88,7 @@ pour qu'il fasse l'effort de trouver la bonne valeur selon lui (il pourrait
une valeur approximative).
On garde toujours dans le `raw` la valeur complète attendue, telle que l'on
peut la recopier. Et l'on indique une `validator_regexp` qui sélectionnera la
peut la recopier. Et l'on indique une `capture_regexp` qui sélectionnera la
ou les valeurs significatives, à la fois dans le `raw` et dans les réponses des
participants.
@ -106,7 +106,7 @@ de rester vague, en utilisant les caractères joker. Par exemple :
[[flag]]
label = "Commande utilisée pour l'exfiltration"
raw = 'apt-get search yolo'
validator_regexp = "^(?:sudo *)?(.*)$"
capture_regexp = "^(?:sudo *)?(.*)$"
```
Dans cet exemple `sudo` est facultatif, plutôt que de sélectionner `(apt-get
@ -124,7 +124,7 @@ label
raw
: drapeau exact à trouver ; sous [forme de tableau]({{< relref "/responses/vector.md" >}}), le participant n'aura pas connaissaance du nombre d'éléments ;
validator_regexp
capture_regexp
: (facultatif) [expression rationnelle]({{< relref "/responses/simple.md#flag-modulable" >}}) dont les groupes capturés serviront comme chaîne à valider (notez que `?:` au début d'un groupe ne le capturera pas) ;
sort\_validator\_regexp\_groups

View File

@ -24,7 +24,7 @@ raw
choices_cost
: (facultatif, par défaut 0) coût pour afficher les choix : avant l'affichage, se comporte comme un `flag` classique (si `choices_cost` = 0, les choix sont affichés directement) ;
validator_regexp
capture_regexp
: (facultatif) expression rationnelle dont les groupes capturés serviront comme chaîne à valider (notez que `?:` au début d'un groupe ne le capturera pas) ;
ordered
@ -58,7 +58,7 @@ value
[[flag]]
type = "ucq"
label = "Type de malware"
validator_regexp = "^.*(dropper).*$"
capture_regexp = "^.*(dropper).*$"
raw = "Il installe quelque chose à son tour ! Il s'agit d'un dropper."
choices_cost = 25

View File

@ -37,7 +37,7 @@ label
raw
: tableau TOML de drapeaux exacts à trouver ; sous forme de tableau, le participant n'aura pas connaissaance du nombre d'éléments ;
validator_regexp
capture_regexp
: (facultatif) [expression rationnelle]({{< relref "/responses/simple.md#flag-modulable" >}}) dont les groupes capturés serviront comme chaîne à valider (notez que `?:` au début d'un groupe ne le capturera pas) ; Attention, la regexp est appliquée seulement sur la représentation de la chaîne de caractères obtenue, pas sur chaque élément.
showlines