Avatar billede riversen Nybegynder
14. september 2008 - 17:04 Der er 5 kommentarer og
1 løsning

regular expression - søg og erstat

Jeg har en lang tekststreng med x antal linier i. Jeg vil gerne slette linier, der matcher udtrykket:

.+\{.+\}.+

dvs. en linie der ser sådan ud skal fjernes helt:
dette er en {prøve}, tror jeg nok

en linie der ikke skal erstattes
dette er en prøve, tror jeg nok

et fuldt eksemple på tekst kunne være
hvordan går det i dag\r\ndette er en {prøve}, tror jeg nok\r\nslut på teksten.

Forståeligt?
Avatar billede riversen Nybegynder
14. september 2008 - 17:05 #1
hvis jeg tager en enkelt linie og matcher mod udtrykket, får jeg et match. Prøver jeg flere linier som i eksemplet ovenfor, får jeg ikke et match også selvom jeg tilføjer ^ og $ hhv. først og sidst i udtrykket.
Avatar billede arne_v Ekspert
14. september 2008 - 17:15 #2
Hvordan virker:

String s = "hvordan går det i dag\r\ndette er en {prøve}, tror jeg nok\r\nslut på teksten.";
System.out.println(s);
s = s.replaceAll(".+\\{.+\\}.+\r\n", "");
System.out.println(s);

?
Avatar billede riversen Nybegynder
14. september 2008 - 17:23 #3
jow, det hjalp... tak
Avatar billede riversen Nybegynder
14. september 2008 - 17:24 #4
falder \r\n ikke ind under . og derfor skal det med også?
Avatar billede arne_v Ekspert
14. september 2008 - 17:31 #5
Avatar billede arne_v Ekspert
28. oktober 2008 - 23:39 #6
all set ?
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