正则表达式的组成规则

在java中,正则表达式的编译是类

java.util.regex.Pattern

正则表达式的构造摘要

1.字符x

包括所有大写和小写字母、所有数字、所有标点符号和一些其他符号的普通字符。

比如之前的例子

可以将[1-9][0-9]{4,12}改成

1[0-9]{4,12}或者a[0-9]{4,12}

此时就表示以1开始或者以a开始的字符,就表示一个任意的普通字符。

2. 反斜线字符

表示一个反斜线,更改下之前的代码

3、[abc] a,b或者c(简单类),任选一个,只能在abc中

4、[^abc] 任何字符,除了a,b,c(否定),不是abc的任意字符

5.[a-zA-Z] a 到 z 或 A 到 Z,两头的字母包括在内(范围)

6. d 数字:[0-9]

D 非数字: [^0-9]相对于d是取反,不是数字的就可以

7. w 单词字符:[a-zA-Z_0-9]匹配字母或数字或下划线或汉字,W是取反:[^w]

上面这些有助于我们理解正则表达式,建立概念,实际上正则有很多构造,需要可以百度搜索,现在我们多做些练习,补充理解学习。

练习:判断手机号是否满足需求

准备手机号例子:

18372345676

18372345673

18372345672

18372345671

13469830000

15926943333

18727244444

13901657081

规则:

1. 首位是1

2. 第二位是[358]

3. 后续数字 表示数字:[0-9]

X{n} X,表示恰好 n 次,后续位数为9位,所以X是[0-9],n是9,结合起来是[0-9]{9}

那么正则就是1[358][0-9]{9}

编写代码

运行结果

练习:邮箱判断

下面邮箱例子(实际邮箱正则很复杂):

1233213123@qq.com

zoushdiasd@163.com

heis_321@126.com

guaojpod@sina.com.cn

daioyasodi@tencent.cn

规则:

1.以@符合分为三个部分

2. @以前的部分:w{8,10}

3.@

此时的正则是: w{8,10}@

4. @后面的部分可以依据.(点)进行划分

5. .以前的部分[a-z1-9]{2,7}

6. .本身表示任何字符,所以需要转义.

此时的正则是: w{8,10}@[a-z1-9]{2,7}.

7. .后面的部分可以暂时表示宽泛一些[a-z]{2,3}

此时的正则是: w{8,10}@[a-z1-9]{2,7}.[a-z]{2,3}

8. 多个com和cn可以将点及后面的部分一起,看做一个整体(.[a-z]{2,3}){1,2}

此时的正则是:

w{8,10}@[a-z1-9]{2,7}(.[a-z]{2,3}){1,2}

编写代码

结果

java 正则首位8或者9的8位数字_正则简单手机号和邮箱练习相关推荐

  1. java 正则首位8或者9的8位数字_从零开始学Python - 第025课:正则表达式的应用

    正则表达式相关知识 在编写处理字符串的程时,经常会遇到在一段文本中查找符合某些规则的字符串的需求,正则表达式就是用于描述这些规则的工具,换句话说,我们可以使用正则表达式来定义字符串的匹配模式,即如何检 ...

  2. java 正则首位8或者9的8位数字_Python 正则表达式re最完整的操作教程

    本文来自Python 官方文档,告诉大家一个好消息,官网有中文版的啦~~ re --- 正则表达式操作 源代码: Lib/re.py 这个模块提供了与 Perl 语言类似的正则表达式匹配操作. 模式和 ...

  3. 编程练习 P124 6.2 java国际标准书号ISBN是由13位数字组成,分为5段,如978-7-111-50690-4是一个合法的书号。编写程序,用户输入一个字符串书号,检查该书号是否合法。

    import java.util.Scanner;public class ISBNValidator {public static void main(String[] args) {Scanner ...

  4. java正则表达式判断手机号_正则表达式学习之简单手机号和邮箱练习

    正则表达式的组成规则 在java中,正则表达式的编译是类 java.util.regex.Pattern 正则表达式的构造摘要 1.字符x 包括所有大写和小写字母.所有数字.所有标点符号和一些其他符号 ...

  5. java生成随机10位数字_用Java生成10个随机的四位数字

    要生成随机整数,请将Random类与nextInt一起使用.首先,创建一个Random对象-Random rand = new Random(); 上面的Random是一个随机数生成器.现在,一一挑选 ...

  6. java生成不重复8位数字_生成8位随机不重复的数字编号

    package com.jjinfo.common.util; import java.util.Arrays; import java.util.Random; /** * */ public cl ...

  7. java生成不重复8位数字_如何生成8位随机不重复的数字编号

    在Java中难免会使用到生成随机不重复的数字编号的时候,那么你知道如何生成8位随机不重复的数字编号吗?下面我们就跟爱站小编一起去看看吧. package com.jjinfo.common.util; ...

  8. 正则获取前8位数字_数据取整,获取字符串前数字另辟蹊径之LOOKUP

    看到标题,数据取整,获取字符串前数字,用LOOKUP函数?EK你确定没搞错吗?是的,当然没有搞错.今天,我们会用LOOKUP来数据取整,获取字符串前数字. 首先我们来看一下数据取整效果图: 图1 取整 ...

  9. php 正则匹配11位数字,php正则匹配数字

    方法一: if(preg_match("/^\d*$/",$fgid)) echo('是数字'); else echo('不是数字'); 方法二: if(is_numeric($f ...

最新文章

  1. 自学必看篇:从零基础到精通的Python学习路线(附加教程)
  2. python处理excel表格实例-python读写Excel表格的实例代码
  3. 忘记mysql数据库密码时进行修改方法
  4. jasperreports_JasperReports:棘手的部分
  5. win7如何添加终端服务器,Windows7系统超级终端的添加方法 win7如何添加超级终端...
  6. 现在加入Web前端学习还有市场吗?自己是否适合学习前端
  7. 软件工程团队项目方案(四):高校申请指南
  8. sap 服务采购订单研究
  9. 有关大学计算机基础考试的试题,大学计算机基础考试试题
  10. python的模块和包
  11. 计算机怎么获取权限删除文件,电脑删除文件需要获取trustedinstaller权限怎么回事...
  12. 台式计算机为什么数字输入不了,电脑小键盘不能输入数字该怎么办?
  13. 计算机中库的创建方法,win7系统下库的创建方法
  14. 空手套白狼的典型案例,不花一分钱,整合别家产品,赚自己的钱
  15. Unity中GPUInstance详解
  16. 线性嵌套实例(三个小实例)
  17. git 进阶 (四)变基提交
  18. python中的.nc文件处理 | 02 CMIP及MACA v2气候数据介绍
  19. 学C语言中输入输出函数,一篇就够了
  20. android qq授权申请appkey,如需在APP中使用腾讯QQ登陆,需提前申请获取腾讯QQ的APPKEY和APPSecret。...

热门文章

  1. 什么是Nacos?Nacos注册配置中心介绍
  2. golang 大数据平台_大数据平台是什么?有哪些功能?如何搭建大数据平台?
  3. Spring Boot 设置 ASCII banner 艺术字
  4. String String.valueof() toString三者之间的区别~
  5. oracle如何收缩表空间,ORACLE收缩表空间
  6. lpv4的地址格式由多少个字节组成_我们为什么有这么多字符编码格式?
  7. python minimize_Python数学规划案例一
  8. java计算距离_java实现计算地理坐标之间的距离
  9. 《SpringCloud超级入门》使用Eureka编写注册中心服务《九》
  10. linux8安装ftp服务,CentOS8.0 安装配置ftp服务器的实现方法