Проверка правильности регулярных выражений в JavaScript и PHP - PullRequest
0 голосов
/ 12 февраля 2012

Я делаю форму на своем сайте, но у меня проблема с 2 регулярными выражениями.(У меня есть регулярное выражение PHP и регулярное выражение JS, потому что я прочитал, что опасен только javascript),Вопрос в том, что я не хочу, чтобы у людей были & ^ * # @ и что-то там в названии.

Каково правильное регулярное выражение для этого.

Далее идет Javascript

function checkform ( form )
    {
        if (form.name.value == "") 
        {
            alert( "Please enter your name." );
            form.name.focus();
            return false ;
        }

        if (form.email.value == "")
        {
            alert( "Please enter your email address." );
            form.email.focus();
            return false ;
        }

        return true ;
    }

Здесь я хочу то же самое и проверяю, что проверяет пустоту и длину и не # $ ^&!

Для подтверждения электронной почты мне нужно другое регулярное выражение, но я ищу его позже.

Приветствие Йохем

Пожалуйста, измените, если вы видите ошибки.РЕДАКТИРОВАТЬ:

var re и var regex - это регулярные выражения электронной почты, которые я нашел.Но почему они не работают, кто-то может дать мне хороший ответ с объяснением, потому что я не так хорош.:)

function checkform ( form )
    {
        var rex = /[^a-z]/i;
        var regex = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
        var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;

        if (regex.test(form.email.value))
        {
            alert( "Please enter your email address." );
            form.email.focus();
            return false ;
        }

        if (rex.test(form.name.value)) 
        {
            alert( "Please enter your name. no numbers or #$^& things allowed)." );
            form.name.focus();
            return false ;
        }

        return true ;
    }

1 Ответ

2 голосов
/ 12 февраля 2012

Если вы хотите принимать только буквы, используйте /[^a-z]/i.Вы можете использовать это регулярное выражение в PHP и в JavaScript.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...