Java String Unquote unquote(String input, char quoteChar)

Here you can find the source of unquote(String input, char quoteChar)

Description

If the input string starts and ends with quoteChar the starting and ending quoteChar will be removed.

License

Open Source License

Parameter

Parameter Description
input a parameter
quoteChar a parameter

Declaration

public static String unquote(String input, char quoteChar) 

Method Source Code

//package com.java2s;
/*/*w  ww .jav  a2 s  .co m*/
 * Copyright (c) 2008-2011, Martijn Brinkers, Djigzo.
 * 
 * This file is part of Djigzo email encryption.
 *
 * Djigzo is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Affero General Public License 
 * version 3, 19 November 2007 as published by the Free Software 
 * Foundation.
 *
 * Djigzo is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public 
 * License along with Djigzo. If not, see <http://www.gnu.org/licenses/>
 *
 * Additional permission under GNU AGPL version 3 section 7
 * 
 * If you modify this Program, or any covered work, by linking or 
 * combining it with aspectjrt.jar, aspectjweaver.jar, tyrex-1.0.3.jar, 
 * freemarker.jar, dom4j.jar, mx4j-jmx.jar, mx4j-tools.jar, 
 * spice-classman-1.0.jar, spice-loggerstore-0.5.jar, spice-salt-0.8.jar, 
 * spice-xmlpolicy-1.0.jar, saaj-api-1.3.jar, saaj-impl-1.3.jar, 
 * wsdl4j-1.6.1.jar (or modified versions of these libraries), 
 * containing parts covered by the terms of Eclipse Public License, 
 * tyrex license, freemarker license, dom4j license, mx4j license,
 * Spice Software License, Common Development and Distribution License
 * (CDDL), Common Public License (CPL) the licensors of this Program grant 
 * you additional permission to convey the resulting work.
 */

public class Main {
    /**
     * If the input string starts and ends with quoteChar the starting and ending
     * quoteChar will be removed. The input string is not trimmed so any leading 
     * or ending white spaces will result in the string not to be unquoted. 
     * @param input
     * @param quoteChar
     * @return
     */
    public static String unquote(String input, char quoteChar) {
        if (input == null) {
            return null;
        }

        /* if length < 2 the input cannot be quoted */
        if (input.length() < 2) {
            return input;
        }

        String unquoted = input;

        if (isQuoted(input, quoteChar)) {
            unquoted = input.substring(1, input.length() - 1);
        }

        return unquoted;
    }

    public static boolean isQuoted(String input, char quoteChar) {
        if (input == null) {
            return false;
        }

        /* if length < 2 the input cannot be quoted */
        if (input.length() < 2) {
            return false;
        }

        return input.charAt(0) == quoteChar && input.charAt(input.length() - 1) == quoteChar;
    }
}

Related

  1. unquote(String argument)
  2. unquote(String argument)
  3. unquote(String aString)
  4. unquote(String entityName)
  5. unquote(String in)
  6. unquote(String literal)
  7. unquote(String maybeQuoted)
  8. unquote(String message)
  9. unquote(String name)