在java中如何判断输入的字符是英文字符,且输入的字符不超过15个
7个回答
展开全部
只要分析字符串中每个字符是中文或英文就行了
你需要一个判断字符是中文或英文的函数
因为java中字符类型char是以unicode存储的
所以不管是中文字符还是英文字符 都可以通过判断char的Unicode范围
boolean isCnorEn(char c)
{
if((c >= 0x0391 && c <= 0xFFE5) //中文字符
|| (c>=0x0000 && c<=0x00FF)) //英文字符
return true;
return false;
}
你需要一个判断字符是中文或英文的函数
因为java中字符类型char是以unicode存储的
所以不管是中文字符还是英文字符 都可以通过判断char的Unicode范围
boolean isCnorEn(char c)
{
if((c >= 0x0391 && c <= 0xFFE5) //中文字符
|| (c>=0x0000 && c<=0x00FF)) //英文字符
return true;
return false;
}
展开全部
正则表达式是可以
假设已经得到输入串 ,input ,String类型
在input不为null的情况下
if (input.matches("[a-zA-Z]{1,15}")){
System.out.println("ok");
}
这样可以,但是效率太低
下面的效率高
int len=input.length();
if(len>15)
System.out.println("length > 15");
for(int i=0;i<len;i++){
char c=input.charAt(i);
if((c>='a'&&c<='z')||(c>='A'&&c<="Z"))
continue;
System.out.println("contains none en-letter");
break;
}
假设已经得到输入串 ,input ,String类型
在input不为null的情况下
if (input.matches("[a-zA-Z]{1,15}")){
System.out.println("ok");
}
这样可以,但是效率太低
下面的效率高
int len=input.length();
if(len>15)
System.out.println("length > 15");
for(int i=0;i<len;i++){
char c=input.charAt(i);
if((c>='a'&&c<='z')||(c>='A'&&c<="Z"))
continue;
System.out.println("contains none en-letter");
break;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
import java.util.Scanner;
public class TestString {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
String str = sc.next();
if(str.length()<16)
{
if(str.matches("^[a-zA-Z]*")){
System.out.println("你输入的全是字母,并且不超过15个字母");
}else{
System.out.println("你输入的不全是字母");
}
}else{
System.out.println("你输入的字母超过15个");
}
}
}
public class TestString {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
String str = sc.next();
if(str.length()<16)
{
if(str.matches("^[a-zA-Z]*")){
System.out.println("你输入的全是字母,并且不超过15个字母");
}else{
System.out.println("你输入的不全是字母");
}
}else{
System.out.println("你输入的字母超过15个");
}
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public class Test {
public static boolean aa(String str){
int len=str.length();
if(len>15){
System.out.println("长度大于15!");
return false;
}
for(int i=0;i<len;i++){
char ch=str.charAt(i);
if((ch>='a'&&ch<='z')||(ch>='A'&&ch<='Z')){
continue;
}else{
System.out.println("有其他字符");
return false;
}
}
return true;
}
public static void main(String[] args) {
String a="dfsSdsadqAS2DC";
aa(a);
}
}
public static boolean aa(String str){
int len=str.length();
if(len>15){
System.out.println("长度大于15!");
return false;
}
for(int i=0;i<len;i++){
char ch=str.charAt(i);
if((ch>='a'&&ch<='z')||(ch>='A'&&ch<='Z')){
continue;
}else{
System.out.println("有其他字符");
return false;
}
}
return true;
}
public static void main(String[] args) {
String a="dfsSdsadqAS2DC";
aa(a);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用正直表达式
追问
您好
请您具体点
谢谢
追答
你查看API文档的Pattern类和Matcher类的用法,你会明白怎么使用,判断长度你就可以使用String对象的length()方法,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询