Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Regexp: Upomoć!

[es] :: PHP :: Regexp: Upomoć!

[ Pregleda: 1646 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

ddz
Dušan Dželebdžić
Pravni fakultet UUB
Beograd

Član broj: 3272
Poruke: 711
*.dynamic.sbb.co.yu.



Profil

icon Regexp: Upomoć!16.08.2007. u 21:17 - pre 202 meseci
Nije baš PHP, ali je srodna tematika...

Imam zadatak da gomilu teksta (15 brojeva časopisa, svaki po 300 strana) iz PDFa prebacim u wordpress. PDFovi su spremani za štampu, tako da uredno imaju line break na kraju svakog reda.

Svaki članak posebno prebacujem u editor (u mom slučaju Ultra Edit), i propuštam ga kroz dva makroa koja sam za ovu priliku sklepao: jedan za konverziju YUSCII->Unicode, i drugi koji preko regexpa prvo skloni sve crtice sa kraja reda, a onda ubija nepotrebne line-breakove:

Code:
^(.*[^.])\p


ili u prevodu: Spajamo sve redove koji nemaju tačku na kraju, u veseloj nadi da nećemo napraviti previše dodatnih pasusa.

Sve je sjajno radilo, sve dok nisam primetio da u delovima nekih članaka moraju da postoje linebreakovi, jer se radi o stihovima ili dijalozima. Izmenio sam malo string za pretragu, tako da spaja redove jedino ako imaju preko 50 karaktera:

Code:
^(.{50,}[^.])\p


ali UltraEdit uporno odbija da pronađe bilo šta sa ovim stringom. Sad sam se zaglupeo od previše pokušaja, i verovatno previđam očigledno - tu vi stupate na scenu :)
If you can't beat your computer at chess, try kickboxing.
 
Odgovor na temu

byM4k5

Član broj: 22363
Poruke: 428
*.blic.net.



Profil

icon Re: Regexp: Upomoć!29.08.2007. u 02:41 - pre 201 meseci
Problem je u tome što UltraEdit ovo

Code:
{50,}


vidi kao literal. ;)
 
Odgovor na temu

[es] :: PHP :: Regexp: Upomoć!

[ Pregleda: 1646 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.