2011-12-15 17 views
2

私は名前を付けることを可能にする正規表現に問題があります。他の言語、空白、および - charに対して特殊文字を含むことができる機関があれば教えてください。 私は、私が作成した表現ということを知っている:Zend-Regexは空白とUnicode文字を許可します

/^[a-zA-Z- "\']*$/ 

はからZまでの文字を許可します - '」文字と空白が、私はżźćąś入力するか、他の言語の特殊な文字列が有効ではありませんが、私はそれをしたいとき。 。私が作成した有効であるために

第二の式:

/^[^\~\\!\\@\\#\\$\\%\\^\\&\\*\\(\\)\\`\\1\\2\\3\\4\\5\\6\\7\\8\\9\\0\\_\\+\\=\\{\\}\\:\\"\\;\\\\\<\\>\\?\\,\\.\\/\ ]*$/ 

上記禁止文字なし文字AZことができますが、私は例えばそのようなスペースで何かを入力したとき、私は上記の正規表現で空白を禁止いけないけど。:

"Bielsko Biała"

その有効でないが、私はそれを一緒に入力します。

"BielskoBiała"

それは、±文字で有効です。だから私は他の言語のżźćąśłと他の人のような特別な文字を許可したいと思いますが、空白を許可するようにして、私はそれを行う方法をノットしないでください。

私はそれがOKだったけど置くことを可能いけないアルファバリデータを使用していた - 。 "」私もできるようにしたい文字を

答えて

2

まずあなたがuスイッチとUTF-8のサポートを有効にする必要がその後のことができます。シーケンス\pLとマッチUnicodeの文字。hereを参照してください。

だからあなたのソリューションは、

/^[\pL- "\']*$/u 
+0

私をcorrest私が間違っている場合。PLはポーランドの特殊文字のはいを意味?私はまた、他の言語のショートカットを追加する必要がありますでしょうすべてに他言語の特別な文字はありますか? – DarAss

+0

'L'はすべての文字を意味します:)これはすべきです;)今私は理解しています;)ありがとうございます。問題を解決しました – DarAss

+0

あなたは '\ p {言語}'で言語を選択できます。言語のリストは上記のリンクで提供されています。 – Alex

関連する問題