java正则表达式 ascii,是否可以检查字符串是否在Java中仅包含ASCII?
使用正則表達式
您可以使用以下正則表達式查找特定的String值是否包含ASCII字符-\\A\\p{ASCII}*\\z
String類的matches()方法接受正則表達式,并驗證當前字符串是否與給定表達式匹配(如果匹配),則返回true,否則返回false。
因此,通過將上述指定的正則表達式作為參數傳遞,從而對輸入/所需字符串調用matches()方法。
示例import?java.util.Scanner;
public?class?OnlyASCII?{
public?static?void?main(String[]?args)?{
Scanner?sc?=?new?Scanner(System.in);
System.out.println("Enter?a?string?value:?");
String?input?=?sc.nextLine();
//驗證ACCII-
boolean?result?=?input.matches("\\A\\p{ASCII}*\\z");
if(result)?{
System.out.println("String?approved");
}?else?{
System.out.println("Contains?non-ASCII?values");
}
}
}
輸出1Enter?a?string?value:
hello?how?are?you
String?approved
輸出2Enter?a?string?value:
wh??do?we?fall
Contains?non-ASCII?values
驗證每個字符
如果將ASCII字符轉換為整數,則所有結果將小于或等于127。String類的charAt()方法接受一個整數值并返回指定索引處的字符。
使用此方法檢索給定String中的每個字符,并驗證它們是否大于127。
示例import?java.util.Scanner;
public?class?OnlyASCII?{
public?static?void?main(String[]?args)?{
Scanner?sc?=?new?Scanner(System.in);
System.out.println("Enter?a?string?value:?");
String?input?=sc.next();
//將給定的字符串轉換為字符數組
char?charArray[]?=?input.toCharArray();
boolean?result?=?true;
for(int?i?=?0;?i?
int?test?=?(int)input.charAt(i);
if?(test<=127)?{
result?=?true;
}else?if?(test?>127){
result?=?false;
}
}
System.out.println(result);
if(result)?{
System.out.println("String?approved");
}else?{
System.out.println("Contains?non-ASCII?values");
}
}
}
輸出1Enter?a?string?value:
wh?
false
Contains?non-ASCII?values
輸出2Enter?a?string?value:
hello
true
String?approved
總結
以上是生活随笔為你收集整理的java正则表达式 ascii,是否可以检查字符串是否在Java中仅包含ASCII?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2022高考分数线持续出炉:官方提醒谨防
- 下一篇: 美团科技 Java工程师_美团Java工