OCSpro Skrevet 20. april 2006 Del Skrevet 20. april 2006 Java dokumentasjon, om "regular expressions" Predefined character classes. Any character (may or may not match line terminators) \d A digit: [0-9] \D A non-digit: [^0-9] \s A whitespace character: [ \t\n\x0B\f\r] \S A non-whitespace character: [^\s] \w A word character: [a-zA-Z_0-9] \W A non-word character: [^\w] Blant mange vanlige uttrykk, som eks: \t, \n, osv. finner jeg \s og \S som er veldig egnet til mitt bruk... Har prøvd å bruke de både med String.split() og String.charAt(), men får følgende feilmeld under kompilering: illegal escape character while(s.charAt(j) == "\s") { ^ Kan noen si noe om når, om det er mulig, å bruke "\s" og "\S", og forsåvidt de andre tegnene som er "predefined character classes"? Lenke til kommentar
shakur Skrevet 20. april 2006 Del Skrevet 20. april 2006 Vet ikke om dette er svar på spørsmålet, men hvis formålet med løkka di er å kjøre den så lenge j er et blankt tegn vil vel dette funke: while(s.charAt(j) == ' ') eller while(s.charAt(j) == " ") Lenke til kommentar
HV Skrevet 21. april 2006 Del Skrevet 21. april 2006 (endret) Java dokumentasjon, om "regular expressions" Kan noen si noe om når, om det er mulig, å bruke "\s" og "\S", og forsåvidt de andre tegnene som er "predefined character classes"? 5958786[/snapback] Prøv dobbel "\", her er et eksempel. Dette gjelder for all predefinerte bokstaver. public static void main(String[] args) { // \s String s = "Dette er en tekst men iallefall noen space"; s = s.replaceAll("\\s",""); System.out.println("A non-whitespace text: " + s); // \S String s2 = "Dette er en tekst men iallefall noen space"; s2 = s2.replaceAll("\\S",""); System.out.println("A whitespace text: \"" + s2 + "\"."); } Vennlig hilsen HV Endret 21. april 2006 av HV Lenke til kommentar
OCSpro Skrevet 22. april 2006 Forfatter Del Skrevet 22. april 2006 Vet ikke om dette er svar på spørsmålet, men hvis formåletmed løkka di er å kjøre den så lenge j er et blankt tegn vil vel dette funke: hensikten med å bruke \s er at den gjelder for alle typer blanke tegn, altså gjelder mellomrom, tabulator, linjeskift, osv, ikke bare ' '... Prøv dobbel "\", her er et eksempel. Dette gjelder for all predefinerte bokstaver. ... Vennlig hilsen HV 5959438[/snapback] Ser ut til å funke, tusen takk! Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå