StripQualifiers.java
Upload User: zhuyoum
Upload Date: 2007-07-08
Package Size: 1377k
Code Size: 1k
Category:

E-Books

Development Platform:

HTML/CSS

  1. //: com:bruceeckel:util:StripQualifiers.java
  2. package com.bruceeckel.util;
  3. import java.io.*;
  4. public class StripQualifiers {
  5.   private StreamTokenizer st;
  6.   public StripQualifiers(String qualified) {
  7.     st = new StreamTokenizer(
  8.       new StringReader(qualified));
  9.     st.ordinaryChar(' '); // Keep the spaces
  10.   }
  11.   public String getNext() {
  12.     String s = null;
  13.     try {
  14.       int token = st.nextToken();
  15.       if(token != StreamTokenizer.TT_EOF) {
  16.         switch(st.ttype) {
  17.           case StreamTokenizer.TT_EOL:
  18.             s = null;
  19.             break;
  20.           case StreamTokenizer.TT_NUMBER:
  21.             s = Double.toString(st.nval);
  22.             break;
  23.           case StreamTokenizer.TT_WORD:
  24.             s = new String(st.sval);
  25.             break;
  26.           default: // single character in ttype
  27.             s = String.valueOf((char)st.ttype);
  28.         }
  29.       }
  30.     } catch(IOException e) {
  31.       System.err.println("Error fetching token");
  32.     }
  33.     return s;
  34.   }
  35.   public static String strip(String qualified) {
  36.     StripQualifiers sq = 
  37.       new StripQualifiers(qualified);
  38.     String s = "", si;
  39.     while((si = sq.getNext()) != null) {
  40.       int lastDot = si.lastIndexOf('.');
  41.       if(lastDot != -1)
  42.         si = si.substring(lastDot + 1);
  43.       s += si;
  44.     }
  45.     return s;
  46.   }
  47. } ///:~