java 打印元字符_Java 正则表达式元字符

Java正则表达式教程 - Java正则表达式元字符

元字符是在Java正则表达式中具有特殊含义的字符。

Java中的正则表达式支持的元字符如下:( ) [ ] { { \ ^ $ | ? * + . < > - = !

字符类

元字符[和]指定正则表达式中的字符类。

字符类是一组字符。正则表达式引擎将尝试匹配集合中的一个字符。

字符类“[ABC]"将匹配字符A,B或C.例如,字符串“woman"或“women"将匹配正则表达式“wom [ae] n"。

我们可以使用字符类指定一个字符范围。

范围使用连字符-字符表示。

例如,[A-Z]表示任何大写英文字母;“[0-9]"表示0和9之间的任何数字。

^表示不是。

例如,[^ ABC]表示除A,B和C以外的任何字符。

字符类[^ A-Z]表示除大写字母之外的任何字符。

如果^出现在字符类中,除了开头,它只匹配一个^字符。

例如,“[ABC ^]"将匹配A,B,C或^。

您还可以在一个字符类中包含两个或多个范围。例如,[a-zA-Z]匹配任何字符a到z和A到Z.

[a-zA-Z0-9]匹配任何字符a到z(大写和小写)和任何数字0到9。

下表列出了字符类的示例字符a到z 字符类 含义

[abc] 字符a,b或c

[^xyz] 除x,y和z以外的字符

[a-z]

[a-cx-z] 字符a到c或x到z,其将包括a,b,c,x,y或z。

[0-9&&[4-8]] 两个范围(4,5,6,7或8)的交叉,

[a-z&&[^aeiou]] 所有小写字母减元音

预定义字符类

下表列出了一些常用的预定义字符类。预定义

字符

类 含义

. 任何字符

\d 数字。 与[0-9]相同

\D 非数字。 与[^ 0-9]相同

\s 空格字符。 包括与[\\ t \\ n \\ x0B \\ f \\ r]相同。 空格

标签

换行符

垂直标签

表单Feed

回车字符

\S 非空白字符。 与[^ \\ s]相同

\w 一个字符。 与[a-zA-Z_0-9]相同。

\W 非字字符。 与[^ \ w]相同。

例子

以下代码使用\d匹配所有数字。

\\d在字符串中用于转义\。import java.util.regex.Matcher;import java.util.regex.Pattern;public class Main { public static void main(String args[]) {

Pattern p = Pattern.compile("Java \\d");

String candidate = "Java 4";

Matcher m = p.matcher(candidate); if (m != null)

System.out.println(m.find());

}

}

上面的代码生成以下结果。

63c1f76c2d02f352bcef66341bc1c0e9.png

例2

以下代码\w+匹配任何单词。

双斜杠用于转义\。import java.util.regex.Matcher;import java.util.regex.Pattern;public class Main {

public static void main(String args[]) {

String regex = "\\w+";

Pattern pattern = Pattern.compile(regex);

String candidate = "asdf Java2s.com";

Matcher matcher = pattern.matcher(candidate); if (matcher.find()) {

System.out.println("GROUP 0:" + matcher.group(0));

}

}

}

上面的代码生成以下结果。

d2af699dbc901f61b3ec17b1458e9b5d.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值