Du kan bruge klasserne i java.util.regex pakken som følger til at løse dit problem: import java.util.regex.*; public class SRE { public static void main( String[] args ) { CharSequence input = "linie99"; String number = "([0-9]+)"; Pattern pattern = Pattern.compile( number ); Matcher matcher = pattern.matcher( input ); StringBuffer buf = new StringBuffer(); boolean found = false; while ( ( found = matcher.find() ) ) { matcher.appendReplacement(buf, ""); } matcher.appendTail( buf ); String result = buf.toString(); System.out.println( result ); } }
di8leva's løsning er mest elegant, du skal kun bruge min løsning i de tilfælde hvor du skal erstatte noget med noget ikke konstant, men i dit tilfælde er det jo en konstant ("").
hmmm jeg får compiler fejl ved pattern.compile..... men ok jeg kan heller ikke importe java.util.regex jeg kan importe com.oroinc.text.regex.*; men det er vidst slet ikke det samme.. det er noget ibm værk vi kører på prøver lige at finde ud af lidt mere.
Det er vigtigt at du har Java 2SDK 1.4 eller senere, det er først der at regulære udtryk blev introduceret i standarddistributionen. Hvis ikke så hent den fra java.sun.com
Så må du hellere checke hvilke klasser der ligger i com.oroinc.text.regex.*; God fornøjelse.
Synes godt om
Ny brugerNybegynder
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.