带有下划线的RegEx验证名称

时间:2014-10-20 06:36:02

标签: java regex

我有一个验证,字符串可以包含字母数字和_之间。 字符串可以以_开头和结尾 string可以是_

我写过RegEx

^(_)?([a-zA-Z0-9]+)?([a-zA-Z0-9])+?(_)?$

我的单位睾丸

    assertEquals(false, UtilityFunction.isAlphaNumeric("__"));
    assertEquals(true, UtilityFunction.isAlphaNumeric("a"));
    assertEquals(true, UtilityFunction.isAlphaNumeric("_a"));
    assertEquals(true, UtilityFunction.isAlphaNumeric("a_"));
    assertEquals(true, UtilityFunction.isAlphaNumeric("_a_"));
    assertEquals(true, UtilityFunction.isAlphaNumeric("_a_a"));
    assertEquals(true, UtilityFunction.isAlphaNumeric("_a_a"));
    assertEquals(false, UtilityFunction.isAlphaNumeric("_a__a"));
    assertEquals(true, UtilityFunction.isAlphaNumeric("_a_a_"));
    assertEquals(true, UtilityFunction.isAlphaNumeric("a_a"));

失败了 " _a_a"

1 个答案:

答案 0 :(得分:2)

您可以使用此正则表达式

^(?!.*?__)\w+$

RegEx Demo