2 *******************************************************************************
\r
3 * Copyright (C) 2009, International Business Machines Corporation and *
\r
4 * others. All Rights Reserved. *
\r
5 *******************************************************************************
\r
7 package com.ibm.icu.impl.locale;
\r
9 public class StringTokenIterator {
\r
10 private String _text;
\r
11 private String _dlms;
\r
13 private String _token;
\r
16 private boolean _done;
\r
18 public StringTokenIterator(String text, String dlms) {
\r
24 public String first() {
\r
29 public String current() {
\r
33 public int currentStart() {
\r
37 public int currentEnd() {
\r
41 public boolean isDone() {
\r
45 public String next() {
\r
48 _end = nextDelimiter(_start);
\r
49 _token = _text.substring(_start, _end);
\r
58 public boolean hasNext() {
\r
59 return (_end < _text.length());
\r
62 public StringTokenIterator setStart(int offset) {
\r
63 if (offset > _text.length()) {
\r
64 throw new IndexOutOfBoundsException();
\r
67 _end = nextDelimiter(_start);
\r
68 _token = _text.substring(_start, _end);
\r
73 public StringTokenIterator setText(String text) {
\r
79 private int nextDelimiter(int start) {
\r
81 outer: while (idx < _text.length()) {
\r
82 char c = _text.charAt(idx);
\r
83 for (int i = 0; i < _dlms.length(); i++) {
\r
84 if (c == _dlms.charAt(i)) {
\r