Avatar billede dondy-kurt Nybegynder
04. september 2012 - 22:54 Der er 1 løsning

Ignorer negative character-class

Hej Eksperter

Er meget ny til Regular Expression.

Jeg skal have delt en tekst op i to forskellige regs. Det først er "ROCK'N'ROLL", det andet er det er ligger imellem "-------".
Det jeg så har sagt indtil videre ser således ud:

preg_match("/^([^:]+ ?):[^a-zA-Z0-9æøåÆØÅ]+([^\-]+)/", $string, $regs);

Men her stopper den jo så allerede efter den har taget dette: HELE NATTEN // 10 SHOTS : 100

Er der en måde på hvor jeg kan sige at den skal ignorerer "-", hvis den står alene, og så sige at den kun skal stoppe hvis der står "--"?

Jeg har prøvet med:
preg_match("/^([^:]+ ?):[^a-zA-Z0-9æøåÆØÅ]+([^\-]{2,}+)/", $string, $regs);, men det virker desværre ikke..

Nogle der kan hjælpe mig?

Her er teksten:

"ROCK'N'ROLL:
-----------------------------------------------------
HELE NATTEN // 10 SHOTS : 100,-
HELE NATTEN // 4 JÄGERBOMBS : 100,-
HELE NATTEN // 3 LITER FADØL : 200,-
-----------------------------------------------------
"
Avatar billede dondy-kurt Nybegynder
05. september 2012 - 11:17 #1
Jeg klarede den således:
/([^\-]+ ?)[\-]{5,}/
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester