Autor | Zpráva | ||
---|---|---|---|
Kirk Novák Profil * |
#1 · Zasláno: 19. 12. 2015, 09:12:22
Potřebovoval bych si pro offline aplikaci udělat jednoduchý našeptávač, jeho realizaci mám hotovou, ale potřeboval bych ošefovat JS kód pro výběr shod. PHP server nebude k dispozici. AJAXovat se nebude....
Nyní používám konstrukci : var re = new RegExp("~(" + str + "[^~]*)", "gi"); + while + re.exec(jmena) ... atd. a jména mám uložené v proměnné např. jmena="~Maxim Veliký~Josef Kajetán Tyl~Pavel Novák~Kateřina Tylová~ Funguje to slušně ale hledá to jen když píšu jména přesně tak jak jsou uložená, ale já bych potřeboval vylepšit regulár aby splnil toto: mám např. seznam: Maxim Veliký Josef Kajetán Tyl Pavel Novák Kateřina Tylová ................ A potřebuji vyhodit shodu i když někdo začne psát např: "ty ka" tak vyhodit shody: Josef Kajetán Tyl Kateřina Tyhlová Nebo při "ka" Josef Kajetán Tyl Kateřina Tyhlová PS: jmen bude řádově jen několik stovek |
||
Kubo2 Profil |
#2 · Zasláno: 19. 12. 2015, 10:15:36
Jednoducho začiatok reguláru
~ rozšír o medzeru: [ ~]
|
||
Keeehi Profil |
#3 · Zasláno: 19. 12. 2015, 12:08:49
Ač jsou reguláry mocné, nikdy nezvládnou vše. Abych tomu pomohl, tak jsem je přepsal. Živá ukázka
Pokud to má vyhledávat jen od začátku slov, stačí přidat omezení do reguláru reParts.push(new RegExp("(^|\\s)"+part, "i")); |
||
xksák Profil * |
#4 · Zasláno: 20. 12. 2015, 11:20:56
Keeehi:
Tvoje ukázka mi nějak nefachčí >>> i.imgsafe.org/a248134.gif ? |
||
lionel messi Profil |
|||
Bubák Profil |
#6 · Zasláno: 20. 12. 2015, 11:43:03
Mi ukázka nefunguje, obrázek sem nedám. Nebude to prohlížečem? Zkoušel jsem jen ve staré Opeře a jsem líný zkusit to jinde.
|
||
xksák Profil * |
#7 · Zasláno: 20. 12. 2015, 11:51:33
je to dost nedokonalé řešení vůči starším prohlížečům, protože v mnoha starších prohlížečích to nejde, u mně ani v IE8 ("Object doesn't support this property or method" ....), starší Chrome též problém, F 3.6 taky nic.... atd.
|
||
Keeehi Profil |
#8 · Zasláno: 20. 12. 2015, 11:55:46
To bude tím, že konstrukce for .. of je jen v novějších prohlížečích. Není ale problém to nahradit starým klasickým cyklem.
Živá ukázka |
||
Časová prodleva: 9 let
|
0