一、概念
符合一定规则的字符串
二、规则
规则字符在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 数量词
? | 一次或一次也没有 |
* | 零次或多次 |
+ | 一次或多次 |
{n} | 恰好 n 次 |
{n,} | 至少 n 次 |
{n,m} | 至少 n 次,但是不超过 m 次 |
三、使用
1、判断功能:public boolean matches(String regex):告知此字符串是否匹配给定的正则表达式
2、分割功能:public String[] split(String regex):根据给定正则表达式的匹配拆分此字符串
package com.deu08;
import java.util.Arrays;
/**
* public String[] split(String regex):根据给定正则表达式的匹配拆分此字符串。
* 需求2:
我有如下一个字符串:”91 27 46 38 50”
请写代码实现最终输出结果是:”27 38 46 50 91”
*
*/
public class Demo2 {
public static void main(String[] args) {
String string = "91 27 46 38 50";
String string2 = " ";
String[] split = string.split(string2);
int[] a = new int[5];
for (int i = 0; i < split.length; i++) {
a[i]= Integer.parseInt(split[i]);
}
Arrays.sort(a);
System.out.println(a);
String vf = String.valueOf(a);
System.out.println(a);
}
}
3、替换功能:public String replaceAll(String regex,String replacement):把符合regex的用replacement替换