- OLED monitor topic
- Tápos kibeszélő offtopik
- Projektor topic
- Hobby elektronika
- Eddigi legerősebb csatamágusát dobta piacra az Intel
- Törölte az idei asztali csúcsprocesszorát az Intel
- Váratlanul ledobta asztali csúcs-Ryzenjét az AMD
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Tavaszi hardvernyitány
- Apple MacBook
-
PROHARDVER!
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
dqdb
nagyúr
Ajánlott előtte a
textToMarktartalmának escape-elése, ha véletlenül regex számára speciális karaktert tartalmazna.var textToMark = "a*b*c";
var textContainer = "xxxx A*B*C yyyy a*b*c zzzz";
var escapeRegex = new RegExp(/[.*+?^${}()|[\]\\]/g, "g");
console.log(textToMark);
var textToMark = "(" + textToMark.replaceAll(escapeRegex, "\\$&") + ")";
console.log(textToMark);
var replaceRegex = new RegExp(textToMark, "gi");
console.log(textContainer);
textContainer = textContainer.replaceAll(replaceRegex, "<mark>$1</mark>")
console.log(textContainer); -
Taci
addikt
Igen, ezzel valóban a jókat jelöli ki, viszont az a gond továbbra is, hogy ha csupa kisbetűvel írom be a keresőbe a szót (pl. "máté"), akkor hiába szerepel az eredeti tartalomban nagy kezdőbetűvel (pl. "Máté"), a keresési találatokban átírja a keresésben megadott formára.
Ha pl. a textContainer az, hogy
"Alszik Máté, mert elfáradt.", a keresési kifejezés pedig az, hogy "mÁtÉ", akkor bár kijelöli a megfelelő sztringet, viszont ez lesz a megjelenített sztring:"Alszik mÁtÉ, mert elfáradt."Így csináltam meg, legalábbis itt járok benne:
https://jsfiddle.net/j7qt4bva/Ha "normál kifejezésre" keresek (pl. "máté" vagy "apple"), tökéletesen működik, de rövidebbekre (pl. "a" vagy "az") végtelen cikulsba kerül valahol.
(Amúgy sanszos, hogy erősen túlbonyolítva csináltam meg...)
Az alapötlet az, hogy a keresett szó pozícióinak megkereséséhez csupa nagybetűssé alakítom a szöveget, amiben keresek, és a keresett szót is. Aztán ha megvan a pozíció (vagy pozíciók, több találatnál), akkor egy tömbbe szétvágom az eredeti sztringet a találat pozíciók végén. Majd ezeken belül megcsinálom az öleted alapján (RegExp "i") a <mark> tag hozzáadását úgy, hogy a már megszerzett pozíciók alapján kiszedem az eredeti karaktereket (így meglesz az a változat, hogy a kis- és nagybetűk az eredetiben vannak).
Aztán ezeket a tömbelemeket összefűzöm újra, és ezt adom vissza.Csak valahol rövid(ebb) karakterszámnál végtelen ciklusba futok.
Új hozzászólás Aktív témák
- HP Zbook 15 G5,15.6",UHD,TOUCH,i7-8850H,32GB DDR4,1TB SSD,P2000 4GB VGA,WIN11,IR KAMERA
- Micron 1100 512GB Sata SSD-k
- Asus ZenBook UX3404VA-M9055W - Garanciális: 2027.05.16. - 369.999,-
- HP Zbook 17 G6,17.3",FHD,i7-9850H,16GB DDR4,256GB SSD,T1000 4GB VGA,WIN11
- Lian Li HydroShift II LCD-S 360CL - AM5 & AM4 felfogatókészlettel - GARANCIA: 2028.01.06
- Telefon felvásárlás!! iPhone 11/iPhone 11 Pro/iPhone 11 Pro Max
- Keresünk Galaxy S21/S21+/S21 Ultra/S21 Fe
- AKCIÓ! 1TB Kingston Fury Renegade NVMe SSD meghajtó garanciával hibátlan működéssel
- HIBÁTLAN iPhone 12 Mini 64GB Purple -1 ÉV GARANCIA - Kártyafüggetlen, MS4474, 100% AKKSI
- White GAMER PC! Ryzen 7900X3D / RX 7900 XT/ 32GB 6000MHz / 1TB Gen4 / 750w Gold! BeszámítOK
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

