Here you can find the source of endsWithIgnSpace(String s, String ending)
Parameter | Description |
---|---|
s | The string to be checked |
ending | The ending we're looking for |
private static boolean endsWithIgnSpace(String s, String ending)
//package com.java2s; /*// w w w.j av a 2 s .com * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. * * Copyright 1997-2010 Oracle and/or its affiliates. All rights reserved. * * Oracle and Java are registered trademarks of Oracle and/or its affiliates. * Other names may be trademarks of their respective owners. * * The contents of this file are subject to the terms of either the GNU * General Public License Version 2 only ("GPL") or the Common * Development and Distribution License("CDDL") (collectively, the * "License"). You may not use this file except in compliance with the * License. You can obtain a copy of the License at * http://www.netbeans.org/cddl-gplv2.html * or nbbuild/licenses/CDDL-GPL-2-CP. See the License for the * specific language governing permissions and limitations under the * License. When distributing the software, include this License Header * Notice in each file and include the License file at * nbbuild/licenses/CDDL-GPL-2-CP. Oracle designates this * particular file as subject to the "Classpath" exception as provided * by Oracle in the GPL Version 2 section of the License file that * accompanied this code. If applicable, add the following below the * License Header, with the fields enclosed by brackets [] replaced by * your own identifying information: * "Portions Copyrighted [year] [name of copyright owner]" * * Contributor(s): * * Portions Copyrighted 2008 Sun Microsystems, Inc. */ public class Main { /** See if the given string ends with the given ending, IGNORING ALL * SPACES IN THE INPUT STRING. E.g. " foo b ar " is considered ending * with "foobar". "=" and "-" are considered equivalent * (since this method is used for callseqs - => and -> are used * inconsistently. * * @param s The string to be checked * @param ending The ending we're looking for * @return True iff s ends with "ending" regardless of spaces */ private static boolean endsWithIgnSpace(String s, String ending) { int si = s.length() - 1; for (int ei = ending.length() - 1; ei >= 0; ei--, si--) { while (si >= 0 && Character.isWhitespace(s.charAt(si))) { si--; } if (si < 0) { return false; } char a = Character.toLowerCase(s.charAt(si)); char b = Character.toLowerCase(ending.charAt(ei)); if (a != b) { // Consider = and - to be equivalent if ((a == '=') || (a == '-') && (b == '=' || (b == '-'))) { continue; } return false; } } return true; } }