P58 模式匹配 代码补完
MatchExample.java
- import java.util.regex.*;
- class MatchExample
- {
- public static void main(String args[ ])
- {
- Pattern p;
- Matcher m;
- String patternString="A//DB";
- // 给出一个正则表达式
- String matchedString="AdB324A12BAiB23AlB2";
- // 给出待匹配的字符序列
- p=Pattern.compile(patternString);
- // 用模式patternString初试化模式对象p
- m=p.matcher(matchedString);
- // 用matchedString初始化匹配对象m
- while(m.find())
- {
- String str=m.group();
- System.out.print("从"+m.start()+"到"+m.end()+"匹配模式子序列:");
- System.out.println(str);
- }
- // 查找matchedString中和patternString匹配的全部子字符串,
- // 并输出这些子字符串,以及它们在matchedString中的起止位置
- String temp=m.replaceAll("####");
- System.out.println(temp);
- System.out.println(matchedString);
- matchedString="ACBHGY234jjj434";
- // 重新给出待匹配的字符序列
- m=p.matcher(matchedString);
- // 重新初始化匹配对象m
- if(m.matches())
- // 判断matchedString是否匹配patternString的条件表达式
- {
- String str=m.group();
- System.out.println(str);
- }
- else
- {
- System.out.println("不完全匹配");
- }
- if(m.lookingAt())
- // 判断从matchedString的开始位置是否有和patternString匹配的子序列
- {
- String str=m.group();
- System.out.println(str);
- }
- }
- }