.[ ČeskéHry.cz ].
Javascript

 
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> Web Development
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
MelkorNemesis



Založen: 27. 10. 2007
Příspěvky: 12

PříspěvekZaslal: 27. listopad 2007, 18:20:46    Předmět: Javascript Odpovědět s citátem

Zdravim, mam takovy problem...
mam regulerni vyraz, ktery ma zjistit, jestli obsahuje input (heslo) znak, cislo, i specialni znak zaroven - &&.

kód:
(\d+\w+|\w+\d+)
(\d+\w+|\w+\d+)[^$.[]|()\?\*\+{\:;@°<>-\%#&!~\_=}]


tyhle dva vyrazy potrebuji spojit do jednoho regexpu, muze mi nekdo prosim rict jak?
takhle to udajne nejde
kód:
/(\d+\w+|\w+\d+)[^$.[]|()\?\*\+{\:;@°<>-\%#&!~\_=}]/


diky
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Tutchek



Založen: 28. 07. 2007
Příspěvky: 140
Bydliště: Praha -Pankrác

PříspěvekZaslal: 28. listopad 2007, 04:17:15    Předmět: Odpovědět s citátem

a) Regularni vyraz....
b) Predmet nema byt javascript, mas daleko teoreticky obecnejsi problem....


tak a ted tvuj pozadavek... mno.... spatne hochu, spatne... sice ti asi nepomuze informace, ze regularni vyraz je mapovatelny na konecny automat...

a co si budem rikat, ono to jde... ale bude to nepekne... ale tak jako... co je tvym cilem... ty chces aby na vstupu byl retezec co obsahuje cislo, specialni znak a pismeno

ten automat, to si predstav jako vecicku, ktera chrousta jedno pismenko za druhym a meni svuj stav.. proste rozsviti odpovidajici kontrolku...

tak... precte prvni pismenko.. jake ma moznosti? bud je to cislo.. nebo pismenko.... nebo specialni znak... nebo neco jineho...

pokud je to neco jineho, tak mu je to jedno.. chceme jednu z tech tri... tak at precte cislo.... v tu chvili uz ho cisla nezajimaj.. nejaky tam je a to je vse.. ted ho zajimaji jen pismena a specialni znaky.... mno jo... ale co kdyz ted precte pismeno... to uz ho zajima jen specialni znak.... ten nahodou precte (zbytek ignoruje) a vysledkem je ze dosel do koncoveho stavu (to je takovy stav stroje, kdy se ozve cinknuti zvonku a ty vis ze mas co jsi chtel) (jeste uceneji se da rict, ze automat rozpoznava slova regularniho jazyka a v pripade ze dojde do koncoveho stavu, tak takove slovo prijal... co je reularni jazyk se ted neptej.. snad ti bude stacit ze se pro to da napsat napr. reg. vyraz)


zpet k problemu.... nas automat prave rozpoznal slovo v tomto tvaru

COKOLIV* CISLO COKOLIV* PISMENO COKOLIV* SPECZNAK COKOLIV*

* znamena "libovolny pocet"


ale kdyby na zacatku precetl nejprva pismeno mel by to slovo prijmout taky... tzn by mel prijimat i slova ve tvaru

COKOLIV* PISMENO COKOLIV* CISLO COKOLIV* SPECZNAK COKOLIV*

pokud se nad tim dale zamyslis, tak by ten stroj mel prijmout slova z nasledujiciho jazyka:

kód:
L = { w | w = "COKOLIV* CISLO COKOLIV* PISMENO COKOLIV* SPECZNAK COKOLIV*"
NEBO
w = "COKOLIV* CISLO COKOLIV* SPECZNAK COKOLIV* PISMENO COKOLIV*"
NEBO
w = "COKOLIV* PISMENO COKOLIV* CISLO COKOLIV* SPECZNAK COKOLIV*"
NEBO
w = "COKOLIV* PISMENO COKOLIV* SPECZNAK COKOLIV* CISLO COKOLIV*"
NEBO
w = "COKOLIV* SPECZNAK COKOLIV* CISLO COKOLIV* PISMENO COKOLIV*"
NEBO
w = "COKOLIV* SPECZNAK COKOLIV* PISMENO COKOLIV* CISLO COKOLIV*"
}


tzn vsechny permutace toho co chces... tedy.. by ten regularni vyraz mohl vypadat stylem


kód:
"( ([0-9].*[a-z].*X)|([0-9].*X.*[a-z])|([a-z].*[0-9].*X)|([a-z].*X.*[0-9])|(X.*[0-9].*[a-z])|(X.*[a-z].*[0-9]) )"


za X dosad kvalifikator pro specialni znak, verim tomu ze zvladnes pripadne kvalifikator pro pismeno [a-z] nahradit odpovidajicim kvalifikatorem ktery mas rad


mohl jsem to rict uz na zacatku, pravda.. ale doufam ze te troska teorie okolo nezabije...

jo a maly hlavolam na konec... zkus vymyslet (pripadne dokazat ze neexistuje) regularni vyraz pro automat, ktery prijme slova z jazyka L = {w | w = 0^n 1^n}, tedy slova ktera maji na zacatku nejaky pocet nul... a potom stejny pocet jednicek....
_________________
Nemarni čas u kompu, pojď si zaběhat do lesa

function god_exists() { return false; }
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Mem



Založen: 28. 07. 2007
Příspěvky: 1959
Bydliště: Olomouc

PříspěvekZaslal: 28. listopad 2007, 07:49:35    Předmět: Odpovědět s citátem

Tutchek napsal:
a) Regularni vyraz...

OT: Kdybys chodil na IRC, tak bys vedel, ze tohle uz jsme Melkorovi davno vysvetlili
_________________
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
rezna



Založen: 27. 07. 2007
Příspěvky: 2156

PříspěvekZaslal: 28. listopad 2007, 09:38:11    Předmět: Odpovědět s citátem

Mem napsal:
Tutchek napsal:
a) Regularni vyraz...

OT: Kdybys chodil na IRC, tak bys vedel, ze tohle uz jsme Melkorovi davno vysvetlili


problem je ze to melkor nepochopil - nebo nevim proc to tu pak nenapise ze uz to vyresil

nicmene operator | jsem mu radil snad pred 3 dnama a pokud se na to znovu pta tady tak to asi nepochopil
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
MD



Založen: 29. 07. 2007
Příspěvky: 437
Bydliště: Praha

PříspěvekZaslal: 28. listopad 2007, 10:58:30    Předmět: Odpovědět s citátem

Tak to vlakno, je tady taky proto, aby si to mohli precist i jini, ze?
_________________
- play with objects - www.krkal.org -
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
MelkorNemesis



Založen: 27. 10. 2007
Příspěvky: 12

PříspěvekZaslal: 28. listopad 2007, 12:50:20    Předmět: Odpovědět s citátem

Tutchek: diky, konecne mam co potrebuju a muzu to zprovoznit Smile Takze diky
Mem: jojo, ja psal regulerni protoze sem vetsinou hledal na googlu regexp a nedoslo mi ze je tam regulAr.
rezna: ale pochopil sem na co je | , ale pouzival sem ho jako (\w+| \d+), sice to fungovalo ale porad to nebylo ono.

Diky vsem
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Mem



Založen: 28. 07. 2007
Příspěvky: 1959
Bydliště: Olomouc

PříspěvekZaslal: 28. listopad 2007, 14:34:43    Předmět: Odpovědět s citátem

MD napsal:
Tak to vlakno, je tady taky proto, aby si to mohli precist i jini, ze?

OT: Ja psal ciste o tom bodu a), kde si Tutu honi triko, jak vidi chybku ve slovicku, a pritom ji mel Melkor nahlasenou uz davno ode me na IRC, kam Tutu prestal chodit, a jen z toho duvodu jsem tady vubec rypal Wink

Vecny prinos jeho ranniho elaboratu samozrejme nezpochybnuji, urcite by jej mohl dat i do Wiki CH
_________________
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Zobrazit příspěvky z předchozích:   
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> Web Development Časy uváděny v GMT + 1 hodina
Strana 1 z 1

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra
Nemůžete odpovídat na témata v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete hlasovat v tomto fóru


Powered by phpBB © 2001, 2005 phpBB Group


Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna