判断一个字符串是否为全英文的工具
1.代码:
package Utils.Chinese; import java.util.regex.Matcher; import java.util.regex.Pattern; public class ChineseUtil { /** * 判断字符串是否纯英文 * * @param str * @return */ public static boolean isEnglish(String str) { byte[] bytes = str.getBytes(); int i = bytes.length;// i为字节长度 int j = str.length();// j为字符长度 boolean result = i == j ? true : false; return result; } public static boolean contains(String name, String search) { boolean flag = false; // 简拼匹配,如果输入在字符串长度大于6就不按首字母匹配了 if (search.length() < 6) { String firstLetters = ChineseConvertFrist.convertFrist(name); // 不区分大小写 Pattern firstLetterMatcher = Pattern.compile(search, Pattern.CASE_INSENSITIVE); flag = firstLetterMatcher.matcher(firstLetters).find(); } if (!flag) { // 如果简拼已经找到了,就不使用全拼了 // 全拼匹配 String allLetters = ChineseConvertAll.ConvertAll(name); // 不区分大小写 Pattern pattern2 = Pattern .compile(search, Pattern.CASE_INSENSITIVE); Matcher matcher2 = pattern2.matcher(allLetters); flag = matcher2.find(); } return flag; } }
2.测试
package Utils.Chinese; import java.io.UnsupportedEncodingException; import org.junit.Test; public class TestChinese { @Test public void test2() throws UnsupportedEncodingException{ // System.out.println(ChineseConvertAll.ConvertAll("这是什么意思!我bu明白")); // System.out.println(ChineseConvertFrist.convertFrist("这是什么意思!!!")); // System.out.println(ChineseConvertFrist.getPYChar("好")); System.out.println(ChineseUtil.isEnglish("是不是全英文")); System.out.println(ChineseUtil.isEnglish("is english")); } }
结果:
false
true
【当你用心写完每一篇博客之后,你会发现它比你用代码实现功能更有成就感!】