Hirdetés
- Samsung Galaxy S23 Ultra - non plus ultra
- Yettel topik
- Merész dizájn és új teleobjektív az iPhone 17 Pro mobilokban
- Samsung Galaxy A56 - megbízható középszerűség
- Xiaomi 15 - kicsi telefon nagy energiával
- Samsung Galaxy S25 - végre van kicsi!
- Telekom mobilszolgáltatások
- Apple iPhone 13 Pro Max - őnagysága
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Az Apple bemutatta az iPhone 17-et
Új hozzászólás Aktív témák
-
Taci
addikt
válasz
sztanozs #20799 üzenetére
Mint kiderült, mégsem értem...
Ez a sor nekem elég összetett:
$pattern = '/(&#(?:X[0-9a-f]*|0{0-8}*|{1-9}{0-9}*)(?!;))/i';
Részekre szedve:
-&#
ezzel kezdődő mintákat keres
- amik így folytatódhatnak:
-X[0-9a-f]*
: tehát a következő karakter az X (a végén lévő /i miatt kis- és nagybetű is), utána pedig a 16-os (HEX) számrendszer miatt 0-9 és a-f karakterek szerepelhetnek, a * miatt 0 vagy több számban. Szóval ez a része azt hiszem, rendben (mármint értem), ezzel van lekezelve, ha Hex kódolásban lennének a karakterek.
-0{0-8}*
: Ez a rész nem teljesen tiszta. Ha jól értem, ez azt jelenti, hogy a&#
után hány darab 0 karakter állhat, és itt az van megadva, hogy 0-tól 8 db-ig akármennyi. Tehát ez alapján a minta lehetne&#
,�
,�
, ...,�
? Ezt nem értem, hogy mire való - vagy rosszul értelmezem.
-{1-9}{0-9}*
: Ezt a részt egyáltalán nem értem. Kapcsos zárójel elvileg azt jelenti, hogy az előtte álló karaktert hányszor ismételje meg. De a|
miatt a&#
van előtte. Szóval nem értem.- A végén van még a
(?!;)
. Ezt sem értem, hogy mit csinálhat.- És a legeljén lévő
?:
-ról pedig csak a nevét találtam: Non-Capturing Groups. De a működését nem bírom felfogni. Talán "csak" a művelet sebességéhez van köze?
(?: ), in contrast to ( ), is used to avoid capturing text, generally so as to have fewer back references thrown in with those you do want or to improve speed performance.-
$replacement = '${1};';
Itt pedig az $1 a backreference lenne. A kapcsos zárójeleknek itt a Non-Capturing Groups-hoz van köze? Ezt sem igazán értem. Mert ugye itt adod meg, hogy ha megtalálja a mintát, akkor mire cserélje: eredeti + zárja le pontosvesszővel.
Az én felületes "tudásommal" ha magam írtam volna, akkor ezt írtam volna:$replacement = '$1' . ';';
Miben különbözik az általad írt?Összességében a cél nyilván az, hogy felismerje, ha Dec vagy Hex kódolású karakterekről van szó (Dec:   Ẁ ♦ - Hex: ~ ˆ ∼ ), és ha nincs pontosvessző a végén, akkor egészítse ki vele.
Csak a részletekben vesztem el, és szeretném érteni, mi-mit-miért csinál. (Bocsánat, ha evidens dolgokra kérdezek rá, próbáltam megérteni a részleteket, utána járni, de ez egy számomra elég bonyolult "képlet".)
Ezt a pár dolgot pár mondatban el tudnád, magyarázni, kérlek?
Új hozzászólás Aktív témák
- Kertészet, mezőgazdaság topik
- Parfüm topik
- Samsung Galaxy S23 Ultra - non plus ultra
- LED világítás a lakásban
- Luck Dragon: Asszociációs játék. :)
- Yettel topik
- One otthoni szolgáltatások (TV, internet, telefon)
- Merész dizájn és új teleobjektív az iPhone 17 Pro mobilokban
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- GL.iNet Flint 2 (GL-MT6000) router
- További aktív témák...
- 1080Ti FE Accelero Xtreme IV hűtővel
- ÚJ Apple Macbook Air 15,3 M4 /16GB/256GB - Éjfekete - (2025) - mw1l3mg/a - MAGYAR - 3 év garancia
- Apple Watch Series 4 Nike 44mm Teljes doboz, sok tartozék, 100% akku
- LG 77C4 - 77" OLED evo - 4K 144Hz - 0.1ms - NVIDIA G-Sync - FreeSync - HDMI 2.1 - 1000 Nits
- Dell G15 5530 gyári kijelzőt keresek (DP/N: 0VPD4)
- GYÖNYÖRŰ iPhone 13 mini 128GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3176, 96% Akkumulátor
- Tablet felvásárlás! Samsung Galaxy Tab S10+, Samsung Galaxy Tab S10 Ultra, Samsung Galaxy Tab S10 FE
- Dell G15 5520 Gamer FHD IPS 120Hz i7-12700H 14mag 16GB 512GB Nvidia RTX 3060 6GB 140W Win11 Garancia
- Bomba ár! Dell Latitude E7450 - i5-5GEN I 8GB I 256SSD I 14" HD I HDMI I Cam I W10 I Garancia!
- Apple iPhone 14 128 GB Fehér 1 év Garancia Beszámítás Házhozszállítás
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest