Java正则表达式

正则表达式用来描述特定的字符串模式。

1. 在正则表达式中,有些字符具有特殊的含义:

特殊含义字符含义
.任意一个字符
[abc]表示a、b或c中的任意一个字符
[^abc]表示a、b或c以外的任意一个字符
[a-zA-Z]表示介于a到z或A到Z中的任意一个字符
\s表示空白符(空格、tab、换行、换页、回车)
\S表示非空白符
\d表示任意一个数字[0-9]
\D表示任意一个非数字[^0-9]
\w表示词字符,[a-zA-Z_0-9]
\W表示非词字符

2. 在正则表达式中,有些特殊字符表示字符出现的次数:

表示次数的字符含义
*表示0次或多次
+表示1次或多次
表示0次或1次
{n}恰好n次
{n,m}至少n次,至多m次

3. 正则表达式例子:

public class RegularExpressionTest {
    public static void main(String[] args) {
//      把所有aaa替换成z ----》zbzcz
        System.out.println("aaabaaacaaa".replaceAll("a{3}", "z"));
//      把a、aa、aaa替换成*----》*b*c*
        System.out.println("aaabaaca".replaceAll("a{1,3}", "\\*"));
//      把数字替换成z----》zzzazzbzzcc
        System.out.println("123a44b35cc".replaceAll("\\d", "z"));
//      把非数字替换成0----》12304403500
        System.out.println("123a44b35cc".replaceAll("\\D", "0"));
//      把.替换成\----》www\baidu\com
        System.out.println("www.baidu.com".replaceAll("\\.", "\\\\"));
//      把以a开头和以b结尾的三个字符串替换成-----》-hello-all
        System.out.println("azbhelloahball".replaceAll("a.b", "-"));
//      把所有的词字符替换成#----》#.#.#.#.#.#.#.#.#.#
        System.out.println("a.b.c.A.B.C.1.2.3.4".replaceAll("\\w", "#"));

    }
}

注意:由于“.”,”*”等在正则表达式中具有特殊含义,如果要用字面上的这些字符,必须以“\\”开头。
反斜杠问题请参考这篇文章

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值