Corso di Raku / Espressioni regolari e grammatiche / Espressioni regolari / Asserzioni di contesto / Exercises / Non seguito da
Soluzione: Non seguito da
Ecco una possibile soluzione del compito.
Codice
say so '50 dollars' ~~ / \d+ >> <!before '%'> /;🦋 Trova il programma nel file not-followed.raku.
Output
TrueCommenti
<!before '%'>è un lookahead negativo: riesce solo quando il testo subito dopo il numero non è un%.Il
>>è un confine di parola che segna la fine del numero, e qui conta. Senza di esso il goloso\d+tornerebbe sui suoi passi: su50% offrinuncerebbe allo0e riconoscerebbe solo5— che non è seguito da%— quindi lo schema riuscirebbe a torto.>>costringe\d+a prendere tutto il numero, così il lookahead viene messo alla prova alla fine vera. Di conseguenza50 dollarsdàTrue, mentre50% offdà correttamenteFalse.
Navigazione del corso
← Non seguito da | Fra parentesi →