从头认识java-11.4 正则表达式(2)-基本语法

这一章节我们会简要的介绍一下正则表达式的基本语法。

我们的目的不是写出最复杂的表达式,是写出能够完成任务的表达式。

1.字符

字符 意义
\t 制表符
\n 换行
\r 回车
\f 换页
\e 转义
\xhh 十六进制
\uhhhh unicode十六进制

2.字符类

字符类 意义
. 任意字符
[abc] 包含abc的任意字符
[^abc] 不包含abc的任意字符
[a-zA-z] a-z的大小写任意字符
[abc[ijk]] 跟a|b|c|i|j|k的意义相同(并集)
[a-z&&[ijk]] 只含有ijk的字符(交集)
\s 空白符(空格、换行、换页、tab)
\S 非空白符[^\s]
\d 数字
\D 非数字
\w 词字符[a-zA-z0-9]
\W 非词字符

3.边界符

符号 意义
^ 开始
$ 结束
\b 词的边界
\B 非词的边界
\G 上一个匹配结束

4.逻辑处理

XY x跟在y后面
X|Y x或者y
(X) 捕获组

5.创建正则表达式

package com.ray.ch11;

public class Test {

	public static void main(String[] args) {
		String a = "ddd012";
		for (String pattern : new String[] { "^[a-z]+[0-9]+$", "\\d+", "-?\\a+" }) {
			System.out.println(a.matches(pattern));
		}
	}
}

输出:

true
false
false

总结:这一章节主要展示了正则表达式的简单语法,以及在java里面怎么创建正则表达式。

这一章节就到这里,谢谢。

-----------------------------------

目录

时间: 2024-12-21 01:36:50

从头认识java-11.4 正则表达式(2)-基本语法的相关文章

[Java]#从头学Java# Java大整数相加

重操旧业,再温Java,写了个大整数相乘先回顾回顾基本知识.算法.效率什么的都没怎么考虑,就纯粹实现功能而已. 先上代码: 1 package com.tacyeh.common; 2 3 public class MyMath { 4 5 public static String BigNumSum(String... n) { 6 int length = n.length; 7 StringBuilder result = new StringBuilder(); 8 //这里判断其实不需

Java编程:正则表达式判断邮箱及电话号码是否有效

/** * 正则判断邮箱及电话号码是否有效 * @param args */ public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入你的邮箱:");  String email = sc.next();   System.out.println("请输入你的电话号码:");      String phone = sc.

java 中的正则表达式

一. 什么是正则表达式? 正则表达式是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”).模式描述在搜索文本时要匹配的一个或多个字符串. 二.正则表达式语法参考: https://msdn.microsoft.com/zh-cn/library/ae5bf541(VS.80).aspx.    三.  正则表达式规则的例子: /^(/d{3}-|/d{4}-)?(/d{8}|/d{7})?$/    //国内电话 /^[1-9]*[1-9][0-9]*$/  

9.JAVA中的正则表达式

一.JAVA中的正则表达式 1.概念:以某种特定的方式描述字符串 1.Java中正则表达式的规则 ?          #{0,1}-?有一个-或者没有 \\           #表示一个”\" \\d         #表示一个数字 \\D       #非数字 f\\W+    #表示f开头的单词 \\W       #表示一个非单词字符 \\w       #表示一个单词字符[0-9A-Za-z-]包含’-’ \\s        #空白符号 \\S       #非空白符号 (-|\\

JAVA中的正则表达式--待续

1.关于“\”,在JAVA中的正则表达式中的不同: 在其他语言中"\\"表示为:我想要在正则表达式中插入一个普通的反斜杠: 在Java中“\\”表示为:我想要插入一个正则表达式反斜杠: eg:验证整数的正则表达式为\\d; 如果想要插入一个反斜杠则为:\\\\ : 如果是换行符和制表符则为\n 和\t : 2.特殊字符 Greedy 数量词 X? X,一次或一次也没有 X* X,零次或多次 X+ X,一次或多次 X{n} X,恰好 n 次 X{n,} X,至少 n 次 X{n,m} X

Python for Informatics 第11章 正则表达式(二)

忙碌一天,晚上终于有静下来的时间,继续昨天的工作. 11.1 正则表达式的字符匹配 我们可以用许多其它的特殊字符创建更加强大的正则表达式.最常用的特殊符号是可匹配任何字符的句号(".").在以下的示例中,正则表达式”F..m:“将匹配”From:”,“Fxxm:",”F12m:“,或者”[email protected]:“等类似字符串,因为表达式中间的句号可匹配任何字符. 1 import re 2 hand = open('mbox-short.txt') 3 for l

Java杂谈之正则表达式--日期,邮箱,数字验证

当我们判断数据的格式是否符合规范的时候,一般会采用两种方式: 一种是if...else不断的嵌套或者if...else并排判断的方式 (这两者代表以条件正确为前提还是以条件错误为前提的) 另一种就是正则表示式. 字符串匹配给正则表达式:boolean matches(Stirng regex) 用法:String.matches(regex) 当然可以说if...else是万能的,正则表达式是有局限的,不能过分依赖,它只是解决问 题的一种手段而已,并不是必要的. 但往往用正确的使用正则表达式能让

在java中使用正则表达式注意的地方

1. 对^与$的理解 通常我们会通过类似Matcher matcher = Pattern.compile(regex).matcher(string);的代码去拿到一个Matcher对象.这种情况下regex中的^与$匹配的是整个待匹配串string的开头与结尾.而要使^与$去匹配每一行的开始与结尾,则要使用Pattern.MULTILINE.即:Matcher matcher = Pattern.compile(regex, Pattern.MULTILINE).matcher(string

Java基础巩固--正则表达式

本篇文章是学习尚学堂的关于正则表达式的视频教程时,所做的笔记.供广大编程爱好者学习之用,也留给日后自己复习使用! 1.为什么要有正则表达式? 正则表达式可以方便的对数据进行匹配,可以进行更加复杂的字符串验证.拆分.替换功能. 例如,现在要判断一个字符串是否全部由数字构成,若不使用正则表达式,代码如下: public static boolean isAllNum(String string){         char[] charArr = string.toCharArray();     

java HTML字符串正则表达式使用工具类

原文:java HTML字符串正则表达式使用工具类 代码下载地址:http://www.zuidaima.com/share/1550463453416448.htm HTML相关的正则表达式工具类 包括过滤HTML标记,转换HTML标记,替换特定HTML标记 package com.zuidaima.common.util; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * <p> * Title: H