C:\> java TokenTester Geben Sie einen String ein: val = 12+8 val 12 8
Sie betrachten vermutlich das "=" und "+" Zeichen als wichtig,
also sollten sie als Token angesehen werden.
Aber "+" muss ebenfalls als Begrenzer funktionieren,
so dass "12+8"
in die Token "12", "+" und "8" gesplittet wird.
Dies kann durch die Verwendung von true als dritten Parameter
in dem Konstruktor erreicht werden:
Jetzt werden die einzelnen Begrenzungszeichen (genau wie die Token) durch
nextToken() zurückgegeben.
import java.io.*;
import java.util.*;
public class TokenTester
{
public static void main ( String[] args ) throws IOException
{
BufferedReader stdin =
new BufferedReader(new InputStreamReader(System.in));
System.out.print("Geben Sie einen String ein:");
String data = stdin.readLine();
StringTokenizer tok =
new StringTokenizer( data, " =+-", true );
while ( tok.hasMoreTokens() )
System.out.println( tok.nextToken() );
}
}