Trim specified charcater from end and from of string
/********************************************************************************** * * Copyright (c) 2003, 2004 The Regents of the University of Michigan, Trustees of Indiana University, * Board of Trustees of the Leland Stanford, Jr., University, and The MIT Corporation * * Licensed under the Educational Community License Version 1.0 (the "License"); * By obtaining, using and/or copying this Original Work, you agree that you have read, * understand, and will comply with the terms and conditions of the Educational Community License. * You may obtain a copy of the License at: * * http://cvs.sakaiproject.org/licenses/license_1_0.html * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE * AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * **********************************************************************************/ public class Utils { /** * Trim specified charcater from front of string * * @param text * Text * @param character * Character to remove * @return Trimmed text */ public static String trimFront(String text, char character) { String normalizedText; int index; if (StringUtils.isNull(text)) { return text; } normalizedText = text.trim(); index = 0; while (normalizedText.charAt(index) == character) { index++; } return normalizedText.substring(index).trim(); } /** * Trim specified charcater from end of string * * @param text * Text * @param character * Character to remove * @return Trimmed text */ public static String trimEnd(String text, char character) { String normalizedText; int index; if (StringUtils.isNull(text)) { return text; } normalizedText = text.trim(); index = normalizedText.length() - 1; while (normalizedText.charAt(index) == character) { if (--index < 0) { return ""; } } return normalizedText.substring(0, index + 1).trim(); } /** * Trim specified charcater from both ends of a String * * @param text * Text * @param character * Character to remove * @return Trimmed text */ public static String trimAll(String text, char character) { String normalizedText = trimFront(text, character); return trimEnd(normalizedText, character); } }