Valkuil reguliere expressies PHP7 en/of UTF-8

Hier kunt jij jouw ervaringen en suggesties kwijt.
Gebruikersavatar
rrvvww
Berichten: 196
Lid geworden op: 10 apr 2006, 08:45
Locatie: Assen
Contacteer:

Valkuil reguliere expressies PHP7 en/of UTF-8

Bericht door rrvvww » 24 mar 2017, 13:09

Valkuil waar je pas achter komt als er iemand een vreemd teken in zijn naam heeft. Bijvoorbeeld René.

Ik gebruikte de volgende regex. voor een naam: (PHP 5.3)

Code: Selecteer alles

function valid_naam  ($str) {return(preg_match("/^[A-Za-z. ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûýýþÿ  -]{0,51}$/", $str));} // punt toestaan i.v.m. voorletters R.I. van W.  - voor Marie-José
Na de overstap naar PHP7 werkte deze expressie niet meer met vreemde tekens.
Ik heb de regex. vervangen door:

Code: Selecteer alles

function valid_naam  ($str) {return(preg_match('/^[\p{L} .-]+[\'\/]?[\p{L} .-]+$/u', $str));}   // voornaam en achternaam, - is voor Marie-José, apostrof is voor Lenie van 't Hart, / is voor Jan v/d Meer
René.

Plaats reactie