Skip to content

Instantly share code, notes, and snippets.

@froop
Created February 22, 2012 11:41
Show Gist options
  • Save froop/1884430 to your computer and use it in GitHub Desktop.
Save froop/1884430 to your computer and use it in GitHub Desktop.
[Java] 半角英数句読文字チェック(パスワードとか用)
public static boolean isAlphaNumPunct(String string) {
if (string == null) {
return false;
}
return string.matches("\\p{Graph}+");
}
@Test
public void testIsAlphaNumPunctOK() {
assertTrue(isAlphaNumPunct("abcxyzABCXYZ150!$/:=@[_`~"));
assertTrue(isAlphaNumPunct("a"));
}
@Test
public void testIsAlphaNumPunctNG() {
assertFalse(isAlphaNumPunct("あ"));
assertFalse(isAlphaNumPunct(" "));
assertFalse(isAlphaNumPunct("\t"));
assertFalse(isAlphaNumPunct("\n"));
assertFalse(isAlphaNumPunct("\0"));
assertFalse(isAlphaNumPunct(""));
assertFalse(isAlphaNumPunct(null));
assertFalse(isAlphaNumPunct("a b"));
assertFalse(isAlphaNumPunct("a骶"));
assertFalse(isAlphaNumPunct("①1"));
assertFalse(isAlphaNumPunct("a"));
assertFalse(isAlphaNumPunct("1"));
assertFalse(isAlphaNumPunct("!"));
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment