专栏首页吾爱乐享java之学习正则预定义字符类的用法

java之学习正则预定义字符类的用法

结果示意图

预定义字符类

. 任何字符(与行结束符可能匹配也可能不匹配) \d 数字:[0-9] \D 非数字: [^0-9] \s 空白字符:[ \t\n\x0B\f\r] \S 非空白字符:[^\s] \w 单词字符:[a-zA-Z_0-9] \W 非单词字符:[^\w]

案例代码

package com.ifenx8.regex;

public class Demo3_Regex {

	/**
	 * 预定义字符类 
		. 任何字符(与行结束符可能匹配也可能不匹配) 
		\d 数字:[0-9] 
		\D 非数字: [^0-9] 
		\s 空白字符:[ \t\n\x0B\f\r] 
		\S 非空白字符:[^\s] 
		\w 单词字符:[a-zA-Z_0-9] 
		\W 非单词字符:[^\w] 

	 */
	public static void main(String[] args) {
		demo1();//  . 任何字符(与行结束符可能匹配也可能不匹配) 
		demo2();//  \d 数字:[0-9] 
		demo3();//  \D 非数字: [^0-9]
		demo4();//  \s 空白字符:[ \t\n\x0B\f\r] 
		demo5();//	\S 非空白字符:[^\s]
		demo6();//	\w 单词字符:[a-zA-Z_0-9]
		demo7();//	\W 非单词字符:[^\w]

	}

	public static void demo7() {
		String regex = "\\W";//全部的非单词字符(除了a-z  A-Z  0-9  还有_下划线)
		System.out.println("a".matches(regex));//false
		System.out.println("1".matches(regex));//false
		System.out.println("A".matches(regex));//false
		System.out.println("_".matches(regex));//false
		System.out.println("#".matches(regex));//true
	}

	public static void demo6() {
		String regex = "\\w";//全部的单词字符包括a-z  A-Z  0-9  还有_下划线
		System.out.println("a".matches(regex));//true
		System.out.println("1".matches(regex));//true
		System.out.println("A".matches(regex));//true
		System.out.println("_".matches(regex));//true
		System.out.println("#".matches(regex));//false
		System.out.println("============");
	}

	public static void demo5() {
		String regex = "\\S";//所有的非空白字符
		System.out.println("	".matches(regex));//tab键 返回false
		System.out.println(" ".matches(regex));//空格键 返回false
		System.out.println("    ".matches(regex));//四个空格键长度和一个tab键一样但是他是四个字符,返回false
		System.out.println("2".matches(regex));//其他任意非空白字符 返回true
		System.out.println("==============");
	}

	public static void demo4() {
		String regex = "\\s";//空格 tab键 回车  换行等返回true
		System.out.println("	".matches(regex));//tab键
		System.out.println(" ".matches(regex));//空格键
		System.out.println("    ".matches(regex));//四个空格键长度和一个tab键一样但是他是四个字符,返回false
		System.out.println("==============");
	}

	public static void demo3() {
		String regex = "\\D";//表示除了数字0-9以外的全部字符
		System.out.println("1".matches(regex));//false
		System.out.println("a".matches(regex));//true
		System.out.println("0".matches(regex));//false
		System.out.println("#".matches(regex));//true
		System.out.println("===============");
	}

	public static void demo2() {
		String regex = "\\d";// 代表0-9的数字,因为一个\是表示转义字符,所以要在\d前面加个\
		System.out.println("1".matches(regex));//true
		System.out.println("0".matches(regex));//true
		System.out.println("a".matches(regex));//false
		System.out.println("#".matches(regex));//false
		System.out.println("===============");
	}

	public static void demo1() {
		String regex = ".";//匹配任意字符
		System.out.println("a".matches(regex));//true
		System.out.println("#".matches(regex));//true
		System.out.println("1".matches(regex));//true
		System.out.println("ab".matches(regex));//false  一个“.”表示一个字符 ab为两个字符 所以返回false
		System.out.println("===========");
	}

}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • java之学习正则字符类的用法

    吾爱乐享
  • java之学习正则Greedy 数量词的用法

    吾爱乐享
  • java之学习正则表达式的分组功能及案例

    吾爱乐享
  • java之学习正则Greedy 数量词的用法

    吾爱乐享
  • java之学习正则字符类的用法

    吾爱乐享
  • Java网络编程--Netty中的ByteBuf

    由于JDK中提供的ByteBuffer无法动态扩容,并且API使用复杂等原因,Netty中提供了ByteBuf。

    CodingDiray
  • (转载)Java8新的日期API LocalDate, LocalTime

    由于Java Date的各种问题,Java8推出了新的日期API,很受一拨人的追捧。

    Ryan-Miao
  • Java 8 新特性(三)新的日期时间类

    老日期类 一说到在Java中处理日期和时间,我们首先想到的肯定是java.util.Date类。确实,由于很多教材和文献都比较老,所以大多数人学习Java的时候...

    乐百川
  • Java 8: LocalDate、LocalTime 、LocalDateTime 处理日期时间

    原文链接:https://blog.csdn.net/weixin_39800144/article/details/...

    微风-- 轻许--
  • Android中图片大小和屏幕密度的关系讲解

    Android手机适配是非常让人头疼的一件事,尤其是图片,android为了做到是适配提供了很多文件夹来存放不同大小的图片,比如:drawable-ldpi、d...

    非著名程序员

扫码关注云+社区

领取腾讯云代金券