用JAVA语言编写正则表达式匹配指定的汉字的方法

Python015

用JAVA语言编写正则表达式匹配指定的汉字的方法,第1张

匹配中文字符的正则表达式: [\u4e00-\u9fa5]匹配双字节字符(包括汉字在内):[^\x00-\xff]匹配空行的正则表达式:\n[\s ]*\r匹配HTML标记的正则表达式:/ <(.*) .* <\/\1 <(.*) \/ /匹配首尾空格的正则表达式:(^\s*) (\s*$)用正则表达式限制只能输入中文:onkeyup= "value=value.replace(/[^\u4E00-\u9FA5]/g, ' ') " onbeforepaste= "clipboardData.setData( 'text ',clipboardData.getData( 'text ').replace(/[^\u4E00-\u9FA5]/g, ' ')) "用正则表达式限制只能输入全角字符: onkeyup= "value=value.replace(/[^\uFF00-\uFFFF]/g, ' ') " onbeforepaste= "clipboardData.setData( 'text ',clipboardData.getData( 'text ').replace(/[^\uFF00-\uFFFF]/g, ' ')) "

java 正则匹配字符为纯数字方法:

定义正则表达式为:

String reg="^\\d+$"

获取要判断的字符串

String str;//可以通过Scanner从控制台输入,也可以用字符串常量进行初始化

调用字符串的matches方法判断字符串为纯数字情况:

str.matches(reg);

如果是纯数字返回为true,否则返回为false;

import java.util.Scanner

import java.util.regex.Pattern

public class Test {

    public static void main(String[] args) {

        Scanner can = new Scanner(System.in)

        String ss = can.nextLine()

        String regEx = "[\u4e00-\u9fa5]"

        Pattern p = Pattern.compile(regEx)

        int num = 0//汉字长度

        for(int i=0i<ss.length()i++){

            if(p.matches(regEx, ss.substring(i, i + 1))){

                num++

            }

        }

    if(num<2){

            System.out.println("输入的中文不足两个")

        }else{

            System.out.println("满足")

        }

    }

}

....这回题终于看明白.........