Hirdetés

Keresés

Új hozzászólás Aktív témák

  • FrozeN`

    tag

    válasz kovisoft #15327 üzenetére

    Köszi mindenkinek, aki foglalkozott vele!

    #15327 kovisoft:
    Részben jól működik, de van olyan különleges eset, amivel ki lehet akasztani: ha egyetlen ^-t kettő vagy több szám követ.
    Példa: ^33333sarga^11piros - 3333sarga1piros helyett csak 333sargapiros-t ad vissza

    #15331 pelyib:
    Baromi jók ezek az oldalak, mindkettőt elteszem későbbre, köszi!

    A kódod a nagyon egyszerű eseteknél (pl. ^1piros) működik szépen, de utána azért belekeveredik: a mintádban a match 1 jó, a match 2-nél az lenne nekem az igazi, ^^ esetén is csak egy ^-t adna vissza, a match 3-nál a 06 (6 helyett) nem életszerű és mindenképp kell feltételnek a 0-7 is, plusz ha mondjuk háromnál több szám követi a ^-t, akkor már nincs is match.

    Ha esetleg valaki nagyon unatkozna és foglalkozik vele, azt megköszönöm, hátha összehozható rá egy egysoros megoldás, egyelőre a legjobban bevált módszer az, ha 2 string.replace lépésben dolgozom fel a sztringet, előbb redukálom a ^^nn-t ^n-re, onnan meg már egyszerű kezelni.... illetve most vettem észre, hogy bizonyos esetekben ez a biztosnak hitt megoldásom is kiakasztható és nem kezeli le rendesen, ááááá.... :DDD :O

  • FrozeN`

    tag

    Sziasztok!

    A Quake 3 engine-ben a színezést biztos sokan ismeritek. ^0, ^1, ^2 ... stb., ahol a szám megadja, hogy milyen színű legyen egy string. Pl.: ^1Piros^7Feher^2Zold = PirosFeherZold (mármint itt nem tudok színezni, de gondolom értitek.)

    Van erre egy tök jól működő php preg_replace-s kódom, ami css-el színezi a végeredményt.
    A regex része:
    /\^([0-7])([^\^]+)/g

    Az első match a színkód, a második a tartalom, aztán css-sel színezem az eredményt, eddig tök jól működik, már sikeresen átalakítottam javascript-re is (replace), juhú. Amivel bajban vagyok, és tegnap este már a világ összes idejét elcsesztem rá, hogy a regex-et hogy lehetne úgy felturbózni, hogy a ^^nn-t pont ugyanúgy kezelje, mint a ^n-et? (ráadásul ha ^^nn vagy ^n formátumtól függetlenül n-et adna vissza az első match-ben, az lenne a csúcs)

    (Nem vagyok programozó, csak barkácsolok, de ezt biztos nem tűnt fel :DDD )

    Előre is köszi annak, aki foglalkozik vele!

Új hozzászólás Aktív témák