PCRE találós kérdés

Mutatok egy nagyon egyszerű reguláris kifejezést PHP-val:

<?php
  preg_match
('|[\.-_]+|', $eml, $m);
?>

Szerintetek mire fog ez a minta illeszkedni? Annyit segítek, hogy nem a '.' a '-' és a '_' karakterekből sorozatokra illeszkedik.

Ha nem tudod, akkor lent adok egy kis segítséget.

 

 

 

Ez így már valóban a fenti 3 karaterből állós sorozatra illeszkedik:

<?php
  preg_match
('|[-_\.]+|', $eml, $m);
?>

Ha ez sem segít, akkor van még egy utolsó segítségem.

 

 

 

Ez is csak a '.' a '-' és a '_' katekterekre illeszkedik:

<?php
  preg_match
('|[\.\-_]+|', $eml, $m);
?>

 

 

 

A megfejtés, hogy az első verzióban a '.' és '_' karakterek közötti intervallumnak veszi a kifejezést, ezért egy csomó egyéb dologra is illeszkedni fog.

Új hozzászólás