2009-12-17 16 views

Antwort

11
/^[a-zàâçéèêëîïôûùüÿñæœ .-]*$/i 

Verwendung von /i für Fall-Unempfindlichkeit, um die Dinge einfacher. Wenn Sie keine leeren Zeichenfolgen zulassen möchten, ändern Sie * in +.

+1

Streng genommen - ist nicht französisch, aber das OP hat nicht-französische Zeichen nicht ausdrücklich ausgeschlossen. – mouviciel

+0

Französisch verwendet nicht einige der Zeichen, die der reguläre Ausdruck zu finden versucht, und der reguläre Ausdruck ist nicht generisch genug, wenn er alle Zeichen, die in Sprachen wie Französisch verwendet werden, abgleichen soll. – kiamlaluno

+0

@kiamluno, außer für ñ Französisch verwendet alle anderen erwähnten Zeichen, einige in nur wenigen Wörtern, wie "où" (wo) oder "L'Haÿ-les-Roses" (eine Stadt in der Nähe von Paris) – mouviciel

-1

Dies könnte Anzug:

/^[ a-zA-Z\xBF-\xFF\.-]+$/ 

es läßt ein paar zusätzlichen Zeichen in, wie ÷, aber es behandelt eine ganze Reihe von Akzentzeichen.

+0

woo! -1 und akzeptiert! – nickf

1

[\w .-] ausreichen sollte, aber Sie werden \w betrachten das Gebietsschema und/oder legen Sie sie in den Unicode-Modus haben müssen, so passt \w was Unicode definiert als alphanumerische Zeichen. Wie man das in PHP macht, ist wahrscheinlich nur ein Google weg.

+0

\ w ist eigentlich besser als/[A-Za-z]/u nett ..... –

5

Versuchen:

/^[\p{L}-. ]*$/u 

Dies sagt:

^   Start of the string 
[ ... ]* Zero or more of the following: 
    \p{L}  Unicode letter characters 
    -   dashes 
    .   periods 
      spaces 
$   End of the string 
/u  Enable Unicode mode in PHP 
+0

Kann man E-Mail-Regex platzieren, die Unicodes akzeptiert. Ein Großbuchstabe, ein Kleinbuchstabe und eine Ziffer. – harshit2811

-1

/[A-Za-z-\.\s]/u sollte funktionieren ../u-Schalter ist für UTF-8-Codierung

2

Vereinfachte Lösung:

/^[a-zA-ZÀ-ÿ-. ]*$/

Erläuterung:

^ Start of the string [ ... ]* Zero or more of the following: a-z lowercase alphabets A-Z Uppercase alphabets À-ÿ Accepts lowercase and uppercase characters including letters with an umlaut - dashes . periods spaces $ End of the string