Читаоци попут вас помажу у подршци МУО. Када обавите куповину користећи везе на нашем сајту, можда ћемо зарадити провизију за партнере.

Од стране Иуврај Цхандра
ОбјавиТвеетОбјавиОбјавиОбјавиЕмаил

На регуларне изразе је потребно мало навикавања, па почните са овим примерима да бисте проверили детаље о кориснику.

Регуларни изрази су интегрални алат за програмирање који можете користити за многе практичне свакодневне задатке. Можете да користите регуларне изразе за претрагу, подударање или рашчлањивање текста. Са правим обрасцима, можете потврдити неке од најчешћих детаља корисничког налога.

Можете да користите регуларне изразе са многим језицима или алатима, укључујући Питхон и ЈаваСцрипт.

Редовни израз за проверу корисничког имена

Узмите у обзир корисничко име које је важеће само ако испуњава следеће услове:

  1. Број знакова мора бити између 5 и 15. (Можете да наведете другачији опсег у складу са својим захтевима, али у складу са тим унесите измене у регуларни израз.)
  2. instagram viewer
  3. Низ треба да садржи само алфанумеричке знакове и/или доње црте (_).
  4. Први знак стринга треба да буде абецедни.

Код који се користи у овом пројекту доступан је у а ГитХуб спремиште и бесплатан је за коришћење под МИТ лиценцом.

Следећи регуларни израз задовољава горенаведене услове и може да потврди корисничко име:

^[А-За-з]\\в{4,14}$

Ако вам не одговара горњи израз, погледајте водич за почетнике за регуларне изразе први. Ово је Питхон приступ за валидацију корисничког имена:

увоз ре

дефцхецкУсернаме(корисничко име):
регек = "^[А-За-з]\\в{4,14}$"
р = ре.цомпиле (регек)

ако (ре.Претрага(р, корисничко име)):
штампа ("Валид")
друго:
штампа ("Не важи")

корисничко име1 = "иуврај_цхандра"
цхецкУсернаме (корисничко име1)

корисничко име2 = "ја7&^%87"
цхецкУсернаме (корисничко име2)

Покретање овог кода ће потврдити да је прво корисничко име важеће, али друго није:

Слично томе, можете потврдити корисничко име у ЈаваСцрипт-у користећи следећи код:

функцијацхецкУсернаме(корисник) {
ако(/^[A-Za-z][A-Za-z0-9_]{4,14}$/.тест (корисник)) {
цонсоле.лог('Валид');
} друго {
цонсоле.лог('Не важи');
}
}

цхецкУсернаме('иуврај_цхандра');
цхецкУсернаме('ја7&^%87');

Можете користити овај код за проверите ХТМЛ форме користећи регуларне изразе.

Редовни израз за валидацију адресе е-поште

Редовни израз за валидацију адресе е-поште није савршен. Не постоји универзално договорени регуларни израз за валидацију адресе е-поште. То се у потпуности своди на вашу дефиницију валидности.

Испод је листа услова који могу потврдити већину адреса е-поште:

  1. Корисничко име треба да садржи само алфанумеричке знакове, доњу црту, цртицу и/или тачке.
  2. Стринг ИД-а е-поште мора имати један знак @.
  3. Име домена треба да садржи само алфанумеричке знакове, доњу црту или црту.
  4. После имена домена мора да стоји тачка.
  5. Екстензија домена треба да садржи само алфанумеричке знакове, доњу црту или црту.
  6. Дужина екстензије домена треба да буде између 2 и 4.

Следећи регуларни израз задовољава горенаведене услове и може да потврди адресу е-поште:

^[\в.-]+@([\в-]+\.)+[\в-]{2,4}$

Ово је Питхон приступ валидацији адресе е-поште:

увоз ре

дефцхецкЕмаилИд(е-пошта):
регек = "^[\в.-]+@([\в-]+\.)+[\в-]{2,4}$"
р = ре.цомпиле (регек)
ако (ре.Претрага(р, емаил)):
штампа ("Валид")
друго:
штампа ("Не важи")

емаил1 = "абц@гмаил.цом"
цхецкЕмаилИд (емаил1)

емаил2 = "абц@деф@Гмаил.кахсцг"
цхецкЕмаилИд (емаил2)

Опет, излаз потврђује да је прва адреса е-поште важећа док је друга неважећа:

Можете да потврдите е-пошту у ЈаваСцрипт-у користећи следећи код:

функцијацхецкЕмаилИд(емаил) {
ако (/^[\w.-]+@([\w-]+\.)+[\w-]{2,4}$/.тест (е-пошта)) {
конзола.лог('Ваљан');
} друго {
конзола.лог('Није валидан');
}
}

цхецкЕмаилИд("абц@гмаил.цом");
цхецкЕмаилИд("абц@деф@гмаил.кахсцг");

Проверите јачину лозинке користећи регуларне изразе

Јаке лозинке су неопходне из безбедносне перспективе. Морате бити сигурни да крајњи корисници имају довољно јаке лозинке тако да други не могу приступити њиховим налозима.

Следећа правила осигуравају да је јачина лозинке ваше апликације јака:

  1. Минимални број знакова мора бити 8.
  2. Низ мора имати најмање једну цифру.
  3. Стринг мора имати најмање један знак великих слова.
  4. Стринг мора имати најмање један знак малих слова.
  5. Стринг мора имати најмање један посебан карактер.

Следећи регуларни израз задовољава горенаведене услове и може помоћи да се обезбеди јача лозинка:

(?=.*[а-з])(?=.*[А-З])(?=.*[0-9])(?=.*[^А-За-з0-9])(?=.{101} 8,})

Можете да проверите снагу лозинке у Питхон-у користећи следећи код:

увоз ре

дефцхецкПассвордСтренгтх(Лозинка):
регек = "(?=.*[а-з])(?=.*[А-З])(?=.*[0-9])(?=.*[^А-За-з0-9])(?=.{101} 8,})"
р = ре.цомпиле (регек)

ако (ре.Претрага(р, Лозинка)):
штампа ("Стронг Пассворд")
друго:
штампа ("Слаба лозинка")

лозинка1 = "Хиуахд$5јавд"
цхецкПассвордСтренгтх (пассворд1)

лозинка2 = "моја лозинка"
цхецкПассвордСтренгтх (пассворд2)

Покретање овог кода ће потврдити да је прва лозинка јака док је друга слаба:

Можете да проверите снагу лозинке у ЈаваСцрипт-у користећи следећи код:

функцијацхецкПассвордСтренгтх(Лозинка) {
ако (/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[^A-Za-z0-9])(?=.{8,})/.тест (лозинка)) {
цонсоле.лог('Стронг Пассворд');
} друго {
цонсоле.лог('Слаба лозинка');
}
}
цхецкПассвордСтренгтх('Хиуахд$5јавд');
цхецкПассвордСтренгтх('моја лозинка');

Регуларни израз за подударање са важећим датумом

Ако желите брзо да проверите да ли су дати датуми у традиционалном формату датума или не, то можете учинити помоћу редовног израза.

Следећи регуларни израз одговара датуму у мм/дд/гггг формат:

^(0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])[- /.](19|20 )\д\д$

Регуларни израз за датум има нека ограничења, он не потврђује датуме као што је 31. фебруар. Он само потврђује да ли дати низ изгледа као датум или не.

Следећи Питхон код потврђује да је датум у мм/дд/гггг формат:

увоз ре

дефцхецкДатеФормат(датум):
регек = "^(0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])[- /.](19|20 )\д\д$"
р = ре.цомпиле (регек)
ако(ре.Претрага(р, датум)):
штампа ("Валид")
друго:
штампа ("Не важи")

датум1 = "03/21/2002"
цхецкДатеФормат (датум1)

датум2 = "15/21/2002"
цхецкДатеФормат (датум 2)

Још једном, излаз потврђује да је први формат датума важећи, али је други неважећи:

Можете потврдити датум у мм/дд/гггг форматирајте у ЈаваСцрипт-у користећи следећи код:

функцијацхецкДатеФормат(датум) {
ако(/^(0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])[- /.](19| 20)\д\д$/.тест (датум)) {
цонсоле.лог('Валид');
} друго {
цонсоле.лог('Не важи');
}
}

цхецкДатеФормат('03/21/2002');
цхецкДатеФормат('15/21/2002');

Валидација празног низа помоћу регуларних израза

Можете проверити да ли је стринг празан користећи следећи регуларни израз:

^$

Испод је Питхон приступ за проверу празног стринга:

увоз ре

дефцхецкЕмптиСтринг(стр):
регек = "^$"
р = ре.цомпиле (регек)

ако (ре.Претрага(р, стр)):
принт(„Дати низ је празан")
друго:
принт(„Дати низ није празан")

стр1 = ""
цхецкЕмптиСтринг (стр1)

стр2 = "Ово није празан низ"
цхецкЕмптиСтринг (стр2)

Следећи излаз показује да је први дати стринг празан док други није:

Користите следећи ЈаваСцрипт код да проверите да ли је стринг празан или не:

функцијацхецкЕмптиСтринг(стр) {
ако (/^$/.тест (стр)) {
цонсоле.лог('Дати низ је празан');
} друго {
цонсоле.лог('Дати низ није празан');
}
}

цхецкЕмптиСтринг('');
цхецкЕмптиСтринг('Ово није празан низ');

РегЕк за потврду поштанског кода (амерички поштански број)

Можете да потврдите поштански број (поштански број у САД) у петоцифреним и деветоцифреним форматима (који се називају ЗИП+4) користећи следећи регуларни израз:

^[0-9]{5}(?:-[0-9]{4})?$

Испод је Питхон код за валидацију поштанских кодова:

увоз ре

дефвалидатеЗИПЦоде(шифра):
регек = "^[0-9]{5}(?:-[0-9]{4})?$"
р = ре.цомпиле (регек)

ако (ре.Претрага(р, код)):
штампа ("Валид")
друго:
штампа ("Не важи")

код1 = "76309"
валидатеЗИПЦоде (цоде1)

код2 = "83468-2348"
валидатеЗИПЦоде (цоде2)

код3 = "234445"
валидатеЗИПЦоде (цоде3)

Покретање овог кода ће потврдити да су први и други поштански број важећи, али трећи није:

Користите следећи ЈаваСцрипт код да бисте потврдили поштански број помоћу редовног израза:

функцијавалидатеЗИПЦоде(код) {
ако (/^[0-9]{5}(?:-[0-9]{4})?$/.тест (код)) {
цонсоле.лог('Валид');
} друго {
цонсоле.лог('Не важи');
}
}

валидатеЗИПЦоде('76309');
валидатеЗИПЦоде('83468-2348');
валидатеЗИПЦоде('234445');

Проверите унос корисника помоћу робусног кода

Научили сте како да потврдите детаље корисничког налога користећи регуларне изразе. Провера ових детаља чини код робусним и помаже у решавању безбедносних проблема и нежељених грешака. Робустан код пружа безбедно и безбедно искуство за ваше кориснике.

Требало би да се уверите да проверавате улазне податке било на страни клијента или на страни сервера да бисте увек били сигурни од хакера.

Како имплементирати валидацију обрасца на страни клијента помоћу ЈаваСцрипт-а

Реад Нект

ОбјавиТвеетОбјавиОбјавиОбјавиЕмаил

Повезане теме

  • Програмирање
  • Питхон
  • ЈаваСцрипт

О аутору

Иуврај Цхандра (Објављено 95 чланака)

Иуврај је дипломирао рачунарство на Универзитету у Делхију, Индија. Он је страствен за Фулл Стацк Веб Девелопмент, Питхон и Блоцкцхаин. Када не пише, истражује дубину различитих технологија.

Више од Иувраја Цхандре

Коментар

Претплатите се на наш билтен

Придружите се нашем билтену за техничке савете, рецензије, бесплатне е-књиге и ексклузивне понуде!

Кликните овде да бисте се претплатили