Example usage for com.google.common.base CharMatcher DIGIT

List of usage examples for com.google.common.base CharMatcher DIGIT

Introduction

In this page you can find the example usage for com.google.common.base CharMatcher DIGIT.

Prototype

CharMatcher DIGIT

To view the source code for com.google.common.base CharMatcher DIGIT.

Click Source Link

Document

Determines whether a character is a digit according to <a href="http://unicode.org/cldr/utility/list-unicodeset.jsp?a=%5Cp%7Bdigit%7D">Unicode</a>.

Usage

From source file:com.b2international.commons.AlphaNumericComparator.java

private static final boolean isDigit(final char c) {
    return CharMatcher.DIGIT.matches(c);
}

From source file:org.sonar.db.version.ColumnDefValidation.java

public static String validateColumnName(@Nullable String columnName) {
    String name = requireNonNull(columnName, "Column name cannot be null");
    checkArgument(JAVA_LOWER_CASE.or(CharMatcher.anyOf("_")).or(CharMatcher.DIGIT).matchesAllOf(name),
            String.format("Column name should only contains lowercase and _ characters, got '%s'", columnName));
    return name;//from  w  ww . java2 s  .  c om
}

From source file:ch.ifocusit.plantuml.utils.ClassUtils.java

public static String _getSimpleName(Class aClass) {
    String className = aClass.getSimpleName();
    int lastDollarSign = className.lastIndexOf(DOLLAR);
    if (lastDollarSign != -1) {
        String innerClassName = className.substring(lastDollarSign + 1);
        // local and anonymous classes are prefixed with number (1,2,3...), anonymous classes are
        // entirely numeric whereas local classes have the user supplied name as a suffix
        return CharMatcher.digit().trimLeadingFrom(innerClassName);
    }//from w ww .  j av  a2s . com
    return className;
}

From source file:org.usergrid.utils.TimeUtils.java

/**
 * Jira-style duration parser. Supported duration strings are:
 * <ul>//w ww. ja  va 2 s .  c  om
 *   <li>'S': milliseconds</li>
 *   <li>'s': seconds</li>
 *   <li>'m': minutes</li>
 *   <li>'h': hours</li>
 *   <li>'d': days</li>
 * </ul>
 *
 * Durations can be compound statements in any order as long as they are
 * separated by a ',' (comma). Eg. "1d,14h,3s" to get the millisecond
 * equivalent of one day, fourteen hours and 3 seconds.
 *
 * Numbers with no durations will be treated as raw millisecond values
 *
 * @param durationStr
 * @return the number of milliseconds representing the duration
 */
public static long millisFromDuration(String durationStr) {
    long total = 0;
    MultiplierToken mt;
    long dur;
    for (String val : Splitter.on(',').trimResults().omitEmptyStrings().split(durationStr)) {
        dur = Long.parseLong(CharMatcher.DIGIT.retainFrom(val));
        mt = MultiplierToken.from(val.charAt(val.length() - 1));
        total += (mt.multiplier * dur);
    }
    return total;
}

From source file:pt.ist.fenixedu.quc.domain.QuestionScale.java

public static QuestionScale importFromString(String string) {
    if (string == null) {
        return null;
    }//from   w  w  w .  j  av a2  s  . c  o m

    List<MultiLanguageString> scalePortions = new ArrayList<MultiLanguageString>();
    List<String> valuePortions = new ArrayList<String>();
    for (int iter = 0; iter < string.length();) {
        int length = 0;
        int collonPosition = string.indexOf(':', iter + 3);

        if (CharMatcher.DIGIT.matchesAllOf(string.substring(iter + 3, collonPosition))) {
            length = Integer.parseInt(string.substring(iter + 3, collonPosition));
            String scalePortion = string.substring(collonPosition + 1, collonPosition + 1 + length);
            int index = scalePortion.indexOf(SCALE_VALUE_SEPARATOR);
            String value = scalePortion.substring(0, index);
            String scale = scalePortion.substring(index + 3);
            valuePortions.add(valuePortions.size(), value);
            scalePortions.add(scalePortions.size(), MultiLanguageString.importFromString(scale));
        }
        iter = collonPosition + 1 + length;
    }

    return new QuestionScale(scalePortions.toArray(new MultiLanguageString[] {}),
            valuePortions.toArray(new String[] {}));
}

From source file:app.data.validator.UserInfoValidator.java

public int checkPasswordStrength(String password) {
    // ? ([a-zA-Z0-9\\.,;]){6,}
    int strength = (password == null || password.length() < 6 || password.length() > 24) ? 0
            : CharMatcher.anyOf(".,;").or(CharMatcher.javaLetterOrDigit()).negate().indexIn(password);
    if (strength >= 0) {
        return -1;
    }/*  w w w. j  a  v  a  2 s. com*/

    strength = CharMatcher.digit().indexIn(password) >= 0 ? 1 : 0;
    strength += CharMatcher.anyOf(".,;").indexIn(password) >= 0 ? 1 : 0;
    strength += CharMatcher.javaLowerCase().indexIn(password) >= 0 ? 1 : 0;
    strength += CharMatcher.javaUpperCase().indexIn(password) >= 0 ? 1 : 0;
    return strength;
}

From source file:org.aliuge.crawler.extractor.selector.action.string.StringFilterAction.java

/**
 * //from   w ww.j ava  2 s  .  co m
 */
@Override
public String doAction(String content) {
    for (CharType ct : set) {
        switch (ct) {
        case INVISIBLE:
            content = CharMatcher.INVISIBLE.removeFrom(content);

        case BREAKING_WHITESPACE:
            content = CharMatcher.BREAKING_WHITESPACE.removeFrom(content);
        case DIGIT:
            content = CharMatcher.DIGIT.removeFrom(content);
        case LETTER:
            content = CharMatcher.JAVA_LETTER.removeFrom(content);
        default:
            break;
        }
    }
    if (StringUtils.isNotBlank(filterString)) {
        content = CharMatcher.anyOf(filterString).removeFrom(content);
    }
    return content;
}

From source file:org.thelq.pircbotx.commands.NickUpdateListener.java

protected boolean needRenaming(Event event) {
    String botNick = event.getBot().getNick();
    return CharMatcher.DIGIT.matches(botNick.charAt(botNick.length() - 1));
}

From source file:org.aliuge.crawler.extractor.selector.IntegerElementCssSelector.java

@Override
public Integer getContent() throws ExtractException {
    Elements elements = null;//from ww  w . j av a  2 s.c o  m
    try {
        // content???document2+??
        if (null != content && !newDoc) {
            return content;
        }
        if (null != document) {
            elements = super.document.select(value);
            if (elements.isEmpty())
                return null;
            String temp;
            switch ($Attr) {
            case text:
                temp = CharMatcher.DIGIT.retainFrom(getExtractText(elements));
                break;
            default:
                temp = CharMatcher.DIGIT.retainFrom(getExtractAttr(elements, attr));
                break;
            }

            if (StringUtils.isNotBlank(temp)) {
                Integer integer = Integer.parseInt(temp);
                this.content = integer;
                newDoc = false;
                return content;
            }
        }
    } catch (Exception e) {
        //e.printStackTrace();
        log.error(elements.toString());
        throw new ExtractException("????:" + e.getMessage());
    }
    return null;
}

From source file:org.sbs.goodcrawler.extractor.selector.IntegerElementCssSelector.java

@Override
public Integer getContent() throws ExtractException {
    Elements elements = null;/*from w  w w.  j  a v  a  2s.co  m*/
    try {
        // content???document2+??
        if (null != content && !newDoc) {
            return content;
        }
        if (null != document) {
            elements = super.document.select(value);
            if (elements.isEmpty())
                return null;
            String temp;
            switch ($Attr) {
            case text:
                temp = CharMatcher.DIGIT.retainFrom(getExtractText(elements));
                break;
            default:
                temp = CharMatcher.DIGIT.retainFrom(getExtractAttr(elements, attr));
                break;
            }

            if (StringUtils.isNotBlank(temp)) {
                Integer integer = Integer.parseInt(temp);
                if (null != actions && actions.size() > 0) {
                    for (IntegerSelectorAction action : actions) {
                        this.content = action.doAction(integer);
                    }
                } else {
                    this.content = integer;
                }
                newDoc = false;
                return content;
            }
        }
    } catch (Exception e) {
        e.printStackTrace();
        log.error(elements.toString());
        throw new ExtractException("????:" + e.getMessage());
    }
    return null;
}