`
ynp
  • 浏览: 439730 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

判断字符串是否含有中文字符的三种方法

 
阅读更多
//判断字符串是否含有中文字符的三种方法,正则表达式不能判断标点符号

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Test {
	public static void main(String[] args) {
		System.out.println(checkGBK("。"));
		isChinese("。");
		System.out.println(hasChinese("。"));
	}

	// 方式一
	public static void isChinese(String str) {
		if (str.length() < str.getBytes().length) {
			System.out.println("有中文");
		} else {
			System.out.println("英文");
		}
	}

	// 方式二
	public static boolean checkGBK(String str) {
		String test = "[\\u4E00-\\u9FA5]+";
		Pattern p = Pattern.compile(test);
		Matcher m = p.matcher(str);
		if (m.find()) {
			return true;
		}
		return false;
	}

	// 方式三
	public static boolean hasChinese(String strName) {
		char[] ch = strName.toCharArray();
		StringBuffer sb = new StringBuffer();
		for (int i = 0; i < ch.length; i++) {
			char c = ch[i];
			if (isChinese(c) == true) {
				// System.out.print(c);
				return true;
			}
		}
		return false;
	}

	public static boolean isChinese(char c) {
		Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);
		if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS
				|| ub == Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS
				|| ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A
				|| ub == Character.UnicodeBlock.GENERAL_PUNCTUATION
				|| ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION
				|| ub == Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS) {
			return true;
		}
		return false;
	}

}
分享到:
评论

相关推荐

    PB判断字符串是否有中文

    本文将详细介绍两种在PB中判断字符串是否包含中文的方法,并对这两种方法的原理、实现步骤以及应用场景进行深入探讨。 #### 方法一:判断第一个字符是否为汉字 这种方法通过检查字符串的第一个字符来判断其是否为...

    字符串中是否包含中文

    ### 三、使用正则表达式判断字符串中是否包含中文字符 #### 3.1 基础正则表达式 根据题目描述,我们可以使用两种不同的正则表达式来判断字符串中是否包含中文字符: 1. **正则表达式1**: ```csharp [^\x00-\...

    Java 正则表达式判断字符串是否包含中文

    ### Java正则表达式判断字符串是否包含中文 在日常的软件开发过程中,我们经常会遇到需要对输入的字符串进行校验的情况。例如,在处理用户输入、文本分析或数据清洗时,可能需要判断一个字符串中是否包含中文字符。...

    判断字符串是否含中文

    对于给定任意的字符串,如何快速的判断该字符串中是否包含汉字。

    C#正则表达式大全, 判断字符串是否为正整数,中文,英文.....

    知识点 2:判断字符串是否为正整数 在上面的代码中,我们可以看到一个名为 IsInt 的方法,该方法可以判断输入字符串是否为正整数。该方法使用了正则表达式 @"^\d+$" 来匹配字符串,如果字符串仅包含数字字符,则...

    快速判断是字符串是否含中文

    快速判断字符串包含中文,通过字符串长度比较,高效率判断是否含有中文字符。

    判断字符串有多少个汉字和标点符号

    1. **定义方法 `isChinese(char c)`**:此方法用于判断单个字符是否为汉字或特定的中文标点符号。通过调用 `Character.UnicodeBlock.of(c)` 来判断字符所属的Unicode块,如果该块属于上面提到的六种类型之一,则认为...

    用户输入一个字符串后,判断该字符串中包含几个汉字

    总结一下,C#中判断字符串中汉字数量的方法主要有两种:一是通过Unicode类别,二是通过正则表达式匹配。具体选择哪种方法取决于实际需求和性能考虑。在处理大量数据时,正则表达式可能会更快,但在某些特定情况下,...

    Java判断字符串中是否包含中文方法

    首先,了解Unicode编码对于掌握判断字符串中是否包含中文的方法至关重要。Unicode为世界上几乎所有的字符都提供了唯一的编码。对于中文字符,Unicode定义了从\u4e00到\u9fa5范围内的字符集,这个范围覆盖了大部分...

    检验字符串是否包含简体字(针对繁体字和简体字不同的情况)

    在这个Java示例中,我们通过迭代器遍历字符串中的每个字符,然后使用`UCharacter.isSimpleCompatibilityIdeographic`方法来判断字符是否为简体字。 总的来说,检验字符串是否包含简体字涉及到对中文字符集的理解和...

    Java判断字符串是否含有乱码实例代码

    总结来说,通过判断字符串中非字母数字和非中文字符的比例来判断乱码是一个行之有效的方法。本文提供的Java代码实例清晰易懂,对于处理字符串乱码问题具有一定的参考和借鉴价值。需要注意的是,代码中设定的阈值...

    C#判断一个字符串是否包含另一个字符串的方法

    Android Force Close 出现的异常原因分析及解决方法C#判断字符串是否是数字(实例)C#自动判断Excel版本使用不同的连接字符串C#判断字符串是否存在字母及字符串中字符的替换实例C#实现判断字符串中是否包含中文的方

    Lua判断字符串中包含中文字符的方法和计算字符串宽度函数分享

    在编程语言Lua中,处理字符串数据时,我们经常会遇到需要判断字符串是否包含中文字符,以及需要计算字符串在显示时占用的宽度这两个问题。本文将详细介绍如何在Lua中判断字符串中是否包含中文字符以及如何计算字符串...

    C#实现判断字符串中是否包含中文的方法

    在进行软件开发过程中,判断字符串中是否包含中文是一项基础而实用的功能,尤其在处理文本数据时显得尤为重要。在C#中,我们可以通过使用正则表达式来实现这一功能,因为正则表达式提供了强大的文本匹配能力。 首先...

    vb.net两种判断汉字的方法及速度比较

    本文将介绍两种在VB.NET中判断字符串是否包含汉字的方法,并对这两种方法进行速度上的比较。 #### 方法一:使用正则表达式 这种方法利用了VB.NET中的`Regex`类来匹配指定范围内的Unicode字符,即通常用来表示汉字...

    java 判断字符串是否是中文

    以下是一种简单的Java方法,用于判断字符串是否全部由中文字符组成: ```java public static boolean isAllChinese(String str) { for (int i = 0; i (); i++) { char c = str.charAt(i); if ((c ) || (c &gt; '\u9...

    java 字符串中文判断

    至于判断字符串中是否有连续的中文字符,我们可以稍微修改上述代码,添加一个额外的条件来检查当前字符和下一个字符是否都是中文。这里是一个可能的实现: ```java public static boolean hasConsecutiveChinese...

    易语言判断文本中是否有中文源码

    要判断一段文本(源码)中是否包含中文字符,我们可以采用以下几种方法: 1. **遍历字符检查**:通过循环遍历文本中的每一个字符,判断其Unicode编码是否在中文字符范围内(通常为0x4E00到0x9FA5)。如果找到一个在...

    Go 验证字符串中是否包含中文(推荐)

    1. **方法一**:仅使用`unicode`包来判断字符串是否包含汉字。 2. **方法二**:结合使用`unicode`和`regexp`包,不仅能够判断汉字,还能识别一些中文标点符号。 这两种方法各有优势:第一种方法简单且速度快,适合...

Global site tag (gtag.js) - Google Analytics