10

PHPの正規表現を使用してSkype名を検証したいのですが。

注: 6〜32文字で、文字で始まり、文字と数字のみが含まれている必要があります(スペースや特殊文字は含まれません)。

4

2 に答える 2

18

このパターンはあなたのために働くはずです:

[a-zA-Z][a-zA-Z0-9\.,\-_]{5,31}

これは、先頭の文字と、それに続く合計 6 ~ 32 文字までの任意の英数字の組み合わせ (文字列全体) と一致します。

これを PHP で次のように使用できます。

if (preg_match('/^[a-z][a-z0-9\.,\-_]{5,31}$/i', $name)) {
    // you have a valid name!
}

に、大文字と小文字を区別しない正規表現オプションをpreg_match()追加したことに注意してください。iまた、パターンを文字列の先頭から開始する必要があることを示すために でパターンをリードし、文字列の最後でパターンを終了する必要があること^示すために で終了しました。$

于 2012-10-05T13:12:17.277 に答える
1

これは仕事をします:

preg_match( '~^[a-z][a-z0-9]{5,31}$~i', $text)
于 2012-10-05T13:12:31.270 に答える