A ont ceci:preg_match_all - comment attraper tous les sous-modèles
$pattern = "/\b(?:(one|two|three|four|five|(?:s|z)ix|seven|eight|nine|zero|twelve)(?:\s|-)*){4,8}/ix";
$subject = "one four-six nine twelve
zero eight nine nine seven three six six";
$matches = [];
preg_match_all ($pattern, $subject, $matches, PREG_SET_ORDER);
Ce que je veux voir est tous les mots séparés dans $matches
mais j'obtenir seulement neuf pour le premier et six pour la seconde - les derniers mots de grand modèle. Je sais que je peux mettre tous les mots simples entre parenthèses, mais est-il plus bon moyen + je vais obtenir des chaînes vides de cette façon
sortie comme:
array (size=2)
0 =>
array (size=2)
0 => string 'one four-six nine twelve
zero eight nine ' (length=46)
1 => string 'one'
2 => string 'four'
3 => string 'six'
4 => string 'nine'
5 => string 'twelve'
6 => string 'zero'
7 => string 'eight'
8 => string 'nine'
1 =>
array (size=2)
0 => string 'nine seven three six six' (length=24)
...
Veuillez préciser votre résultat attendu. –
Cherchez-vous [quelque chose comme ça] (http://ideone.com/O5pZb0)? –
Non. J'ai ajouté la sortie comme j'attendais – frenzy