Gå til innhold

Når kan jeg bruke "\s" og "\S"?


Anbefalte innlegg

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
Videoannonse
Annonse
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 av HV
Lenke til kommentar
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:

 

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

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...