Java String Starts Wtih startsWithIgnoreCaseAndNonAlphaNumeric(String searchIn, String searchFor)

Here you can find the source of startsWithIgnoreCaseAndNonAlphaNumeric(String searchIn, String searchFor)

Description

Determines whether or not the string 'searchIn' contains the string 'searchFor', disregarding case,leading whitespace and non-alphanumeric characters.

License

Open Source License

Parameter

Parameter Description
searchIn the string to search in
searchFor the string to search for

Return

true if the string starts with 'searchFor' ignoring whitespace

Declaration

public static boolean startsWithIgnoreCaseAndNonAlphaNumeric(String searchIn, String searchFor) 

Method Source Code

//package com.java2s;
/*/*w ww.j  a v  a2 s  .c o  m*/
  Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
    
  The MySQL Connector/J is licensed under the terms of the GPLv2
  <http://www.gnu.org/licenses/old-licenses/gpl-2.0.html>, like most MySQL Connectors.
  There are special exceptions to the terms and conditions of the GPLv2 as it is applied to
  this software, see the FOSS License Exception
  <http://www.mysql.com/about/legal/licensing/foss-exception.html>.
    
  This program is free software; you can redistribute it and/or modify it under the terms
  of the GNU General Public License as published by the Free Software Foundation; version 2
  of the License.
    
  This program 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 General Public License for more details.
    
  You should have received a copy of the GNU General Public License along with this
  program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth
  Floor, Boston, MA 02110-1301  USA
    
 */

public class Main {
    /**
     * Determines whether or not the string 'searchIn' contains the string
     * 'searchFor', disregarding case,leading whitespace and non-alphanumeric
     * characters.
     * 
     * @param searchIn
     *            the string to search in
     * @param searchFor
     *            the string to search for
     * 
     * @return true if the string starts with 'searchFor' ignoring whitespace
     */
    public static boolean startsWithIgnoreCaseAndNonAlphaNumeric(String searchIn, String searchFor) {
        if (searchIn == null) {
            return searchFor == null;
        }

        int beginPos = 0;
        int inLength = searchIn.length();

        for (; beginPos < inLength; beginPos++) {
            char c = searchIn.charAt(beginPos);
            if (Character.isLetterOrDigit(c)) {
                break;
            }
        }

        return startsWithIgnoreCase(searchIn, beginPos, searchFor);
    }

    /**
     * Determines whether or not the string 'searchIn' contains the string
     * 'searchFor', dis-regarding case starting at 'startAt' Shorthand for a
     * String.regionMatch(...)
     * 
     * @param searchIn
     *            the string to search in
     * @param startAt
     *            the position to start at
     * @param searchFor
     *            the string to search for
     * 
     * @return whether searchIn starts with searchFor, ignoring case
     */
    public static boolean startsWithIgnoreCase(String searchIn, int startAt, String searchFor) {
        return searchIn.regionMatches(true, startAt, searchFor, 0, searchFor.length());
    }

    /**
     * Determines whether or not the string 'searchIn' contains the string
     * 'searchFor', dis-regarding case. Shorthand for a String.regionMatch(...)
     * 
     * @param searchIn
     *            the string to search in
     * @param searchFor
     *            the string to search for
     * 
     * @return whether searchIn starts with searchFor, ignoring case
     */
    public static boolean startsWithIgnoreCase(String searchIn, String searchFor) {
        return startsWithIgnoreCase(searchIn, 0, searchFor);
    }
}

Related

  1. startsWithIgnoreCase(String text, String prefix)
  2. startsWithIgnoreCase(String text, String value)
  3. startsWithIgnoreCase(String thisString, String prefix)
  4. startsWithIgnoreCase(String whole, String prefix)
  5. startsWithIgnoreCase(String[] compoundName, String[] prefix)
  6. startsWithIgnoreCaseAndWs(String searchIn, String searchFor)
  7. startsWithIgnoreCaseAndWs(String searchIn, String searchFor, int beginPos)
  8. startsWithIgnoreWhitespace(String str, String prefix)
  9. startsWithIgnoreWhitespaces(String prefix, String string)