Mega Code Archive

 
Categories / Android / Date Type
 

Normalise Whitespace

/*  * Copyright (C) 2009 Teleca Poland Sp. z o.o. <android@teleca.com>  *  * 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.  */ class Main{     public static String normaliseWhitespace(String string) {         StringBuilder sb = new StringBuilder(string.length());         boolean lastWasWhite = false;         boolean modified = false;         int l = string.length();         for (int i = 0; i < l; i++) {             int c = string.codePointAt(i);             if (Character.isWhitespace(c)) {                 if (lastWasWhite) {                     modified = true;                     continue;                 }                 if (c != ' ')                     modified = true;                 sb.append(' ');                 lastWasWhite = true;             }             else {                 sb.appendCodePoint(c);                 lastWasWhite = false;             }         }         return modified ? sb.toString() : string;     } }