Java String Tokenize tokenizeFilter(CharSequence filter)

Here you can find the source of tokenizeFilter(CharSequence filter)

Description

tokenize Filter

License

Apache License

Declaration

public static List<String> tokenizeFilter(CharSequence filter) 

Method Source Code


//package com.java2s;
/*//from   w w w.  ja va  2 s .  c  o  m
 * Copyright 2005-2016 Sixth and Red River Software, Bas Leijdekkers
 *
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *
 *  http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 */

import java.util.ArrayList;
import java.util.List;

public class Main {
    public static List<String> tokenizeFilter(CharSequence filter) {
        final int length = filter.length();
        final List<String> result = new ArrayList();
        final StringBuilder token = new StringBuilder();
        boolean quoted = false;
        for (int i = 0; i < length; i++) {
            final char c = filter.charAt(i);
            if (Character.isWhitespace(c) && !quoted) {
                if (token.length() > 0) {
                    result.add(token.toString());
                    token.setLength(0);
                }
            } else if (c == '\'' || c == '"') {
                quoted = !quoted;
            } else {
                token.append(c);
            }
        }
        if (token.length() > 0) {
            result.add(token.toString());
        }
        return result;
    }
}

Related

  1. tokenize(String[] stringArray, String delimiter)
  2. tokenizeAutocomplete(String text, int minSize)
  3. tokenizeClassName(final String className)
  4. tokenizeDirectiveCall(String data)
  5. tokenizeExpression(String s)
  6. tokenizeLine(String input)
  7. tokenizeLine(String line)
  8. tokenizeName(String name)
  9. tokenizeNumbersFromString(String stream)