java 如何判断是否是26个英文字母
时间:2022-02-05 10:50:23|栏目:JAVA代码|点击: 次
场景
需要判断,首字母是否是英文字母。
有人说,那还不简单么,StringUtils.isAlpha() 就可以搞定。 笔者也是这么想的,结果却不是如此,代码:
logger.info("字符:'{}' 是否是字母:{}","我",StringUtils.isAlpha("我")); // true
logger.info("字符:'z' 是否是字母:{}","z",StringUtils.isAlpha("z")); // true
百度了下,发现isAlpha是只要在字母区间就算是字母,范围要远远大于26个字母的范围。
解决方案
正则进行判断
用string.matches(reg) 判断就可以,代码:
String english="[a-zA-Z]";
logger.info("字符:'{}' 是否是字母:{}","我","我".matches(english)); // true
logger.info("字符:'{}' 是否是字母:{}","z","z".matches(english)); // true
字符列表,然后遍历
也可以写个包含26个字符的数组,然后封装为自己的判断方法。 但是感觉不如matches方便,在此不详述。
补充:java判断字符串是否全部由数字,大小写字母,特殊符号组成
直接上代码,经过验证。
package javaTest;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class test {
/***
*
* @param args
* java判断字符是否是全部由数字,小写字母,大写字母,特殊符号组成
* 正则表达式判断
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "aksjfjJAJIFJSL12455432^&^&(";
String str1 = "abcdfjijgiaj";
String str2 = "JAOGVNDIJEIO";
String str3 = "12345465870";
String str4 = "@#$^^%^&*(";
Pattern pattern1 = Pattern.compile("[a-z]*");
Pattern pattern2 = Pattern.compile("[A-Z]*");
Pattern pattern3 = Pattern.compile("[0-9]*");
Pattern pattern4 = Pattern.compile("\\p{Punct}+");
Matcher matcher1 = pattern1.matcher(str1);
Matcher matcher2 = pattern2.matcher(str2);
Matcher matcher3 = pattern3.matcher(str3);
Matcher matcher4 = pattern4.matcher(str4);
if (matcher1.matches()) {
System.out.println("全是小写字母");
}
else {
System.out.println("不全是小写字母");
}
if (matcher2.matches()) {
System.out.println("全是大写字母");
}
else {
System.out.println("不全是大写字母");
}
if (matcher3.matches()) {
System.out.println("全是数字");
}
else {
System.out.println("不全是数字");
}
if (matcher4.matches()) {
System.out.println("全是特殊符号");
}
else {
System.out.println("不全是特殊符号");
}
//判断字符串是否全部由数字组成,java自带方法判断
boolean flag = true;
for (int i = str3.length()-1; i >= 0; i--) {
if (!Character.isDigit(str3.charAt(i))) {
flag = false;
}
}
if (flag) {
System.out.println(str3 + "全部是数字");
}
}
}
上一篇:SpringBoot Shiro 权限注解不起作用的解决方法
栏 目:JAVA代码
本文标题:java 如何判断是否是26个英文字母
本文地址:http://www.codeinn.net/misctech/192486.html


阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2java中-jar 与nohup的对比
- 3Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 4Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7java读取excel文件的两种方法
- 8解析SpringSecurity+JWT认证流程实现
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机




