praegune kellaaeg 16.06.2024 01:28:02
|
Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
sõnum |
|
raido357
HV veteran
liitunud: 26.09.2002
|
28.01.2014 23:21:36
PHP-s regex tõlke meetodi matchimiseks *.js failidest |
|
|
Tere,
Ei ole regex-iga sina peal ning palun abi.
Oleks vaja matchida *.js failidest, järgnevaid osi:
__t('Mingi tekst')
Too __t() võib olla ükskõik mis teise meetodi sees või "" märkidest tekst.
Näiteks:
alert(__t('Mingi tekst') );
alert(__t("Mingi tekst") );
Lisaks võib __t() esinseda kujul alert(__t( var_name ) ); - ehk siis kus meetodisse edastatud muutuja, sellisel juhul regex ei tohi matchida.
Seni katsetused oma peaga olen saanud osaliselt matchima.
Tänu abistajale.
|
|
Kommentaarid: 78 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
70 |
|
tagasi üles |
|
|
Redikate
HV veteran
liitunud: 30.12.2005
|
|
Kommentaarid: 34 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
33 |
|
tagasi üles |
|
|
gynterk
HV kasutaja
liitunud: 17.01.2004
|
29.01.2014 01:28:15
|
|
|
Ei saanud täpselt aru, et kas tahad koos funktsiooniga või ainult sisu, kui sisu, siis sobib Redikate variant, kui koos siis
|
|
Kommentaarid: 5 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
5 |
|
tagasi üles |
|
|
raido357
HV veteran
liitunud: 26.09.2002
|
30.01.2014 00:18:57
|
|
|
Tänud. Ühte juhtu see ainult ei kata, kui on __t( "Mingi tekst" ) - ehk siis tühikuid enne ja pärast jutumärke.
Edit: Sain lahendatud -
1 - tühik kummalgi pool http://regex101.com/r/bZ5yN4
n tühikuid - http://regex101.com/r/vS9uP8
Edit2:
Paari varianti veel ei match-i:
true ? __t( 'Mingi tekst' ) : __t( 'Teine tekst' );
$(el).html( __t( 'Tekst' ) + variable + '__t( 'Tekst' ) );
function( [ __t( 'tekst' ), __t( 'tekst2' ) ] );
Edit 3 lahendus:
http://regex101.com/r/uU5cK2
Lipp U lisatud - ungreedy.
Edit 4 - Üks pattern valmistab veel raskusi -
alert( __t( 'Mingi tekst {0}, {1} .. {n}', 'tere', 'ants', '...') );
Ehk siis, tuleks matchida lisaks eelnevatele juhtudele ka varianti, kus argumente on > 1 - kõik ülejäänud argumendid, asendab __t meetod 1 argumendi {0}... {N} asemele.
Lahendus -
Teine match group, mida lihtsalt ignoreerin.
http://regex101.com/r/mD5cG7
Edit 5 -
Lahedus 4 ei matchi -
alert( __t( 'Minu tekst kolm "tekst jutumärkides" {0} {1}..', 'tere', 'tore' ) )
Edit6:
Tegin chain-itud meetodi, mis avaldist ei sega. Midagi stiilis:
alert( __t( 'Minu tekst kolm "tekst jutumärkides" {0} {1}' ).tprintf( 'tere', 'tore' ) )
Kellel veel huvi katsetada, siis palun väga.
|
|
Kommentaarid: 78 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
70 |
|
tagasi üles |
|
|
|
lisa lemmikuks |
|
|
sa ei või postitada uusi teemasid siia foorumisse sa ei või vastata selle foorumi teemadele sa ei või muuta oma postitusi selles foorumis sa ei või kustutada oma postitusi selles foorumis sa ei või vastata küsitlustele selles foorumis sa ei saa lisada manuseid selles foorumis sa võid manuseid alla laadida selles foorumis
|
|
Hinnavaatlus ei vastuta foorumis tehtud postituste eest.
|