KomepiutaPolokalame

PHP (regex) - o le a lena? Faataitaiga ma le siakiina o faaupuga masani

Pe a galulue i mau i so o se gagana o aso nei polokalame, ia feiloai pea developers ma sini o le faamaoniga sao mo le tausisia o le mamanu manao, suesue ma suia suega fragments ma isi ituaiga o ona iloilo gaoioiga o faamatalaga amio. Atiina ae taitai atu ai outou lava algorithms faamaoniga e leiloa o le taimi, o le code ogatasi ma le lavelave i lona atinae ma modernization.

O le televave o atinae, o le Initoneti ma gagana Uepi-mamanu e manaomia le faia o auala vavai ma le puupuu o le mau gaosi i se aofaiga aupito i maualalo e manaomia mo lenei code. E le o se ese ma ua lauiloa i amataina ma developers tomai faapitoa o le gagana PHP. O le gagana faaupuga masani e pei o le templates mau e faafaigofie le galuega o le taulimaina o le mau ma le faaitiitia code mo le faitau sefulu ma le faitau selau o laina. Le tele o faafitauli e le mafai ona foia i uma e aunoa ma le i ai.

Faaalia e le aunoa i PHP

ei ai auala e tolu gagana PHP mo le galulue faatasi ma faaupuga masani - «ereg», «mb_ereg» ma «preg». E sili ona taatele o le Ofisa o «preg», o lona galuega tauave tuuina atu le avanoa i le faletusi o le lagolago PCRE faaupuga masani, uluai atiina ae mo le gagana Perl, lea o loo aofia ai i le pusa PHP. Preg sailia le galuega tauave i se faafetaui manoa mau tuuina mai, e tusa ma se mamanu patino i le gagana o le faaupuga e masani ai.

syntax Faavae

O se vaega o se tusiga puupuu e mafai ona faamatalaina auiliili atoa syntax faaupuga masani, mo lenei o loo i ai se tusi faapitoa. Tatou te tuuina atu na o le elemene autu e faaali avanoa mo atinae ma malamalama i le code faataitaiga.

I le ua aloaia faamatalaina faigata tele PHP faaupuga masani, ma o lea faafaigofie le faamatalaga. O se faaupuga masani o se manoa anotusi. E aofia ai o se mamanu tuueseeseina ai le tuuto ma le fesuiai ai e faailoa ai le ala e taulima ai. aofia ai e mafai ai i le filifiliga eseese ma repetitions o mamanu.

Mo se faataitaiga, i le faaupuga / \ d {3} - \ d {2} - \ d {2} / m faasoasoataumafa o le "/", sosoo ai ma le mamanu, ma o le faatusa «m» o le fesuiai.

ua encoded uma le mana o le faaupuga masani e faaaoga meta-tagata. O le metacharacter gagana autu o le backslash - "\". E suia ai le ituaiga o nei tagata i luga o le faafeagai (ie. E. Liua i se wildcard uiga masani ma le isi foi itu). O le isi metacharacter taua o le a saʻo le laina «|», faamaoti mai e le mamanu isi. Le tele o faataitaiga o meta-tagata:

* Amata mea faitino po o se manoa
( amata subpattern
) iuga subpattern
{ Amata quantifier
} iuga quantifier
\ d digit decimal mai 0 i le 9
\ D so o se tagata e le o se numera
\ s faailoga avanoa, avanoa, tab,
\ w lomifefiloi faailoga

PHP, gaosia faaupuga masani, avanoa manatu e avea o se uiga aoga eseese, o lea o le faaupuga o XYZ ma ABC FEA E eseese.

subpatterns

I PHP subpatterns e puipui masani, ma o nisi taimi e taʻua i latou o "subexpressions". Faatino galuega tauave nei:

  1. filifiliga Faasoasoaina. Mo se faataitaiga, o le mamanu vevela (se mea | Bird |) coincides i upu "vevela", "Firebird" ma le "vevela". Ma e aunoa ma le puipui o le a na o se manoa avanoa, "manu" ma le "vevela".

  2. "Mataʻina" subpattern. o lona uiga o lenei pe afai o le mamanu fetaui substring, toe foi lea afitusi uma. Mo le manino, tatou te tuuina atu se faataitaiga. Ona o le faaupuga masani nei: mauaina le manumalo ((auro | plated auro) (pine | ipu)) - ma le manoa mo afitusi, "maua le manumalo i se pine auro." I le faaopoopo atu i le fuaitau muamua, o le a tuuina atu ai le taunuuga suesuega: "Pine Auro", "pine", "auro".

E faagaoioia repetitions (kvadrifikatory)

I le tuufaatasia o le faaupuga masani e masani lava ona manaomia e iloilo le toe faia o numera ma faatusa. e le o se faafitauli lenei, pe afai e le tele o repetitions. Ae o le mea e fai pe a tatou le iloa lo latou aofai tonu? I totonu o lenei tulaga e talafeagai e faaaoga metacharacters faapitoa.

Mo se faamatalaga o repetitions faaaogaina kvadrifikatory - metacharacters e faamaoti le numera. e Kvadrifikatory o ituaiga e lua:

  • taatele i le puipui;
  • faaitiitia.

Aotelega quantifier ootia i le aofai aupito i maualalo ma le maualuga o elemene repetitions faatagaina i le pepa faatumu o numera e lua i le braces, e pei o x {2,5}. Afai o le aofaiga aupito maualuga o repetitions e le o iloa, e le o faamaoti mai le finauga lona lua: x {2}.

o faailoga quantifiers faapuupuu mo le o repetitions taatele ina ia aloese mai le soona syntax manaomia. E masani lava o loo lavea e tolu:

1. * - o po o le sili repetitions, lea e tutusa ma {0,}.

2. + - o se tasi po o le sili repetitions, o lona uiga, {1} ...

3.? - o pe na toe fai se tasi - {0,1}.

faataitaiga regex

Mo i latou oe na aoaoina le faaupuga masani, faataitaiga - o le tusi aoga sili ona lelei. Tatou te tuuina atu ni nai e faaalia ai o latou avanoa ma le tapulaa maualalo o le taumafaiga. Uma code o atoatoa talafeagai ma lomiga o PHP 4.x ma luga. Ina ia malamalama atoatoa i le syntax ma le faaaogaina o le gagana vala uma tatou pepa faataga o le tusi e J .. Friedl, "faaupuga masani", lea e atoatoa manatu syntax, ma o loo i ai e le gata i faataitaiga o faaupuga masani PHP, ae faapea foi mo se Python, Perl, MySQL, Java, Ruby, ma C #.

Aloaia E-meli tuatusi

Galuega. E i ai se itulau Initoneti lea imeli tuatusi ua talosagaina le tagata asiasi. e tatau ona siaki faaupuga masani i le sao o le lauga ao lei auina atu savali. e le mautinoa Siaki e faapea o le pusameli faamaoti moni lava o loo i ai ma maua savali. Ae vele mai manino sese tuatusi e mafaia.

Faaiuga. A o ma so o se gagana polokalame, i PHP mafai ona faatinoina i faamaoniga lauga-imeli regex i auala eseese, ma le faataitaiga o le i lenei mataupu o le filifiliga mulimuli ma na o le. O le mea lea, i mataupu taitasi, o le a tatou tuuina atu se lisi o tulaga manaomia e tatau ona amanaia pe polokalame ma faalagolago faatinoga patino atoa i luga o le atinae.

O lea la, o le faaupuga ia e tofotofoina ai se imeli aloaia, e tatau ona siaki le tulaga nei:

  1. O le i ai i le amataga laina le @ faatusa, ma e leai ni avanoa.
  2. O le vaega DOMAIN o le tuatusi o le @ faatusa, o loo i ai na o le tagata aoga mo igoa silafia e. Le lava lea e tasi e faatatau i le igoa o le tagata e faaaogāina.
  3. Afai e talafeagai le siakiina o le username e fuafua ai le afioaga o le tagata faapitoa e pei o se koma liliu po o laina i luga. O faatusa e ono matautia ma e mafai ona aofia ai i totonu o sea ituaiga o osofaiga e SQL-tui. Aloese mai le lauga.
  4. usernames faatagaina na manatu e tasi, e mafai ona le uiga muamua po o le mulimuli i le manoa.
  5. E tatau i le igoa o loo silafia e le itiiti ifo i le lua ma le sili atu nai lo tagata e ono.

Faataitaiga, i le amanaia ai e mafai ona vaai i ai o nei tulaga uma i le fuainumera nei.

Aloaia o se URL

Galuega. Siaki pe o le manoa mau faamaoti o se aoga URL tuatusi. Le taimi lava e toe, tatou te maitauina o faaupuga masani URL-siakiina e mafai ona faatinoina i ni auala eseese.

Faaiuga. Tatou lomiga mulimuli e faapea:

/^(https?:\/\/)?([\da-z\.-]+)\.([az\.]{2,6})([\/\w \ .-]) * \ /? $ /

O lenei iloilo le vaega i auiliili i le faaaogaina o ata.

talosaga 1 I luma o le URL le tatau ona i ai so o se tagata
tagi 2 Siaki i le afioaga o le pito i luma faamalosia «http»
aitema 3 E tatau ona i ai se faailoga
tagi 4 Afai ei ai «s», o le URL manatu i se sootaga faamaonia «https»
tagi 5 Manaomia vaega o le "//"
tagi 6 E leai se tagata
p. 7-9 E faamaonia ai le silafia e muamua tulaga ma le afioaga o le tulaga
p.10-13 E faamaonia ai le silafia e le tusi le tulaga lua ma le tulaga
p.14-17

URL fausaga faila - o se seti o numera, tusi, faamamafaina ai, nutililii, togi, ma a slash i le faaiuga

Siaki le numera o pepa aitalafu

Galuega. E manaomia ona e faatinoina le faamaoniga o le aofaiga pepa aitalafu ulu o le faiga totogiina taatele. A variant mo na o kata visa ma MasterCard.

Faaiuga. A le faia o le faaupuga e tatau ona amanaia le afioaga mafai o eseesega i le potu sao. O le digits i luga o le faafanua o loo vaevaeina i ni vaega mo le faitau ma le faatonuga faigofie. O lea, e moni e faapea o se tagata e mafai ona taumafai e ulu atu i se numera i lenei auala (ie. E. O le faaaogaina o avanoa).

Tusi se faailoga taatele o le silasila i le mafai avanoa po o hyphens, e sili atu ona faigata nai lo le lafoaia tagata uma vagana digits. O le mea lea, tatou pepa faataga o le faaaogaina o se wildcard faaupuga / D, lea e aveesea ai tagata uma vagana digits.

O lenei e mafai ona e alu saʻo lava i le numera siaki. Uma kamupani, tagata e tuuina atu pepa aitalafu faaaoga se faatulagaga numera tulaga ese. I le faataitaiga o loo faaaogaina, ma e le manaomia le kalani e ulu atu i le igoa o le kamupani - ua fuafuaina e le numera. amata i taimi uma ni pepa visa i le numera 4 ma maua se umi o le 13 po o le 16 digits. MasterCard amata i le tele o 51-55 ma a umi le numera 16. O le taunuuga, tatou te maua ai le faaupuga lenei:

I luma o ona iloilo le poloaiga e mafai ona toe tofotofoina le digits mulimuli o le fuainumera, lea ua fuafuaina i luga o le algorithm Luhn.

E faamaonia ai numera o le telefoni

Galuega. Siakiina o le sao atoatoa o le numera o le telefoni ulu.

Faaiuga. O le aofai o digits i le faatulagaina ma feaveai numera o telefoni eseese tele e faalagolago i luga o le atunuu, o lea le lalolagi atoa siaki le faaaogaina o faaupuga masani, numera o le telefoni saʻo mafai. Ae numera faava o malo ua i ai se faatulagaga atoatoa ma le atoatoa mo le siakiina i le mamanu. E sili atu ina ia sili atu ma sili atu e faagaoioia telefoni o le atunuu o loo taumafai e ausia le tulaga lava e tasi. o fausaga potu e faapea:

+ CCC.NNNNNNNNNNxEEEE, pe afai:

- C - o le atunuu code aofia ai 1-3 digits.

- N - numera e oo atu i 14 digits.

- E - tuu i le faitalia faaopoopoga.

o Plus se elemene taua naua, ma le faailoga X o le taimi nei pe a faaopoopoga manaomia.

O se taunuuga i tatou le faaupuga nei:

^ \ + [0-9] {1,3 } \ [0-9] {4,14}. (:?. X +)? $

O le numera i le tele

Galuega. E tatau ona mautinoa faafuasei integer o se ituaiga faapitoa. I le faaopoopo, e tatau ona maua se faaupuga masani e na o le numera mai le tele.

Faaiuga. O nisi nei o faamatalaga i nisi o mataupu sili ona taatele:

Fuafua itula mai le 1 i le 24 * (1 [0-2] | [1-9]) $
Aso i le masina 1-31 * (3 [01] | [12] [0-9] | [1-9]) $
Sekone po o minute 0-59 ^ [1-5]? [0-9] $
O se numera mai le 1 e 100 * (100 | [1-9] [0-9]) $
Aso o le tausaga 1-366 * (36 [0-6] | 3 [0-5] [0-9] | [12] [0-9] {2} | [1-9] [0-9]) $

Search IP-tuatusi

Galuega. E tatau ona iloa ai pe a tuuina mai manoa o se aoga IP-tuatusi i faatulagaga IPv4 i le tele mai 000.000.000.000-255.255.255.255.

Faaiuga. A o ma so o se faafitauli i le gagana a PHP, ei varintov le tele o le faaupuga e masani ai. Mo se faataitaiga, o lenei:

siakiina o le initoneti o le faaalia

Siaki regex saʻo mo e amataina e mafai ona faigata ona o le lavelave o le syntax, lea e ese mai le "masani" gagana polokalame. Ina ia foia lenei faafitauli, e tele testers initoneti faaupuga faia faigofie e siaki ai le sao atoatoa o le mamanu e foafoaina i le anotusi moni. O le Faapolokalameina ulufale le faamatalaga faaupuga ma faamaoniga ma vaai i le taimi lava lena le taunuuga o le gaosiga. E masani lava ona i ai o tuuina atu se vaega faasinomaga, lea auiliiliga le faaupuga masani, faataitaiga ma eseesega o le faatinoga mo le gagana e sili ona lautele.

Ae ina ia atoatoa faalagolago auaunaga luga o le initoneti le fautuaina taunuuga mo developers uma oe faaaogaina PHP. ua tusia se faaupuga masani ma faamaonia i tagata, tulaʻi agavaa ma mautinoa ai le leai o ni mea sese.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 sm.unansea.com. Theme powered by WordPress.