正则表达式
来源:互联网 发布:词汇量测试什么软件 编辑:程序博客网 时间:2024/05/17 19:20
正则表达式:符合一定规则的字符串
规则字符在java.util.regex Pattern类中
A:字符 x 字符x(举例:a,1) \\ 反斜线字符B:字符类 [abc] a、b 或 c(简单类) [^abc] 任何字符,除了 a、b 或 c(否定) [a-zA-Z] a 到 z 或 A 到 Z,两头的字母包括在内(范围) [0-9] 0-9字符C:预定义字符类 . 任何字符 \d 数字:[0-9] \w 单词字符:[a-zA-Z_0-9]D:Greedy 数量词 X? X一次或一次也没有 X* X零次或多次 X+ X一次或多次 X{n} X恰好 n 次 X{n,} X至少 n 次 X{n,m} X至少 n 次,但是不超过 m 次
判断功能:
public boolean matches(String regex):告知此字符串是否匹配给定的正则表达式。
分割功能:
public String[] split(String regex):根据给定正则表达式的匹配拆分此字符串。
替换功能:
public String replaceAll(String regex,String replacement):把符合regex的用replacement替换
练习:找出规则,写出正则,校验电话号码
13245678901 13332345678 13456789012 18812345678 18999999999 18666666666 18786868686
public static void main(String[] args) { String number = "13245678901"; //正则表达式 String reg = "1[38][0-9]{9}"; //调用maches(String reg)进行判断指定字符串是否匹配指定的正则表达式 boolean flag = number.matches(reg); System.out.println(flag); }
练习:有如下一个字符串:”91 27 46 38 50”
请写代码实现最终输出结果是:”27 38 46 50 91”
public static void main(String[] args) { String s="91 27 46 38 50"; int [] arr=new int [5]; String reg=" "; String[] str = s.split(reg); for (int i = 0; i < str.length; i++) { arr[i] = Integer.parseInt(str[i]); } Arrays.sort(arr); StringBuffer sb = new StringBuffer(); for (int i = 0; i < str.length; i++) { sb.append(arr[i]+" "); } String str2 = sb.toString(); System.out.println(str2); }
0 0
- 【正则表达式】正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- IntelliJ使用指南—— 导入Eclipse的Web项目
- 初识Java之概念
- 经典案例-制作FAO列表页
- caffe loss 曲线(python 正则表达式)
- UEFI原理与编程(四):UEFI工程模块文件-使用main函数的应用程序工程模块
- 正则表达式
- JAVA实现仿微信红包分配规则
- JQuery动画
- 进程死锁算法——Peterson与Dekker
- altera FPGA时序工程约束主要命令
- 解决发布App到Apple Store无法构建版本的问题
- 【SSLGZ 1673】垃圾陷阱
- HDU 2544 最短路 (模板题)
- MySQL基础