快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

在JAVA中使用正则表达式

在JAVA中使用正则表达式

jdk1.4中加入了java.util.regex包提供对正则表达式的支持。而且Java.lang.String类中的replaceAll和split函数也是调用的正则表达式来实现的。

正则表达式对字符串的操作主要包括:字符串匹配,指定字符串替换,指定字符串查找和字符串分割。下面就用一个例子来说明这些操作是如何实现的:

<%@ page import="java.util.regex.*"%>

<%

Pattern p=null; //正则表达式

Matcher m=null; //操作的字符串

boolean b;

String s=null;

StringBuffer sb=null;

int i=0;

//字符串匹配,这是不符合的

p = Pattern.compile("a*b");

m = p.matcher("baaaaab");

b = m.matches();

out.println(b+"<br>");

//字符串匹配,这是符合的

p = Pattern.compile("a*b");

m = p.matcher("aaaaab");

b = m.matches();

out.println(b+"<br>");

//字符串替换

p = Pattern.compile("ab");

m = p.matcher("aaaaab");

s = m.replaceAll("d");

out.println(s+"<br>");

p = Pattern.compile("a*b");

m = p.matcher("aaaaab");

s = m.replaceAll("d");

out.println(s+"<br>");

p = Pattern.compile("a*b");

m = p.matcher("caaaaab");

s = m.replaceAll("d");

out.println(s+"<br>");

//字符串查找

p = Pattern.compile("cat");

m = p.matcher("one cat two cats in the yard");

sb = new StringBuffer();

while (m.find()) {

m.appendReplacement(sb, "dog");

i++;

}

m.appendTail(sb);

out.println(sb.toString()+"<br>");

out.println(i+"<br>");

i=0;

p = Pattern.compile("cat");

m = p.matcher("one cat two ca tsi nthe yard");

sb = new StringBuffer();

while (m.find()) {

m.appendReplacement(sb, "dog");

i++;

}

m.appendTail(sb);

out.println(sb.toString()+"<br>");

out.println(i+"<br>");





p = Pattern.compile("cat");

m = p.matcher("one cat two cats in the yard");

p=m.pattern();

m = p.matcher("bacatab");

b = m.matches();

out.println(b+"<br>");

s = m.replaceAll("dog");

out.println(s+"<br>");



i=0;

p = Pattern.compile("(fds){2,}");

m = p.matcher("dsa da fdsfds aaafdsafds aaf");

sb = new StringBuffer();

while (m.find()) {

m.appendReplacement(sb, "dog");

i++;

}

m.appendTail(sb);

out.println(sb.toString()+"<br>");

out.println(i+"<br>");



p = Pattern.compile("cat");

m = p.matcher("one cat two cats in the yard");

sb = new StringBuffer();

while (m.find()) {

m.appendReplacement(sb, "<font color="red">cat</font>");

}

m.appendTail(sb);

out.println(sb.toString()+"<br>");

String aa=sb.toString();

out.println(aa+"<br>");

//字符串分割

p = Pattern.compile("a+");

String[] a=p.split("caaaaaat");

for(i=0;i<a.length;i++)

{

out.println(a[i]+"<br>");

}

p = Pattern.compile("a+");

a=p.split("c aa aaaa t",0);

for(i=0;i<a.length;i++)

{

out.println(a[i]+"<br>");

}

p = Pattern.compile(" +");

a=p.split("c aa aaaa t",0);

for(i=0;i<a.length;i++)

{

out.println(a[i]+"<br>");

}

p = Pattern.compile("\\+");

a=p.split("dsafasdfdsafsda+dsagfasdfa+sdafds");

out.println(a.length+"<br>");

for(i=0;i<a.length;i++)

{

out.println(a[i]+"<br>");

}

%>
返回类别: 教程
上一教程: 用JSP/ASP创建WAP应用
下一教程: 用JSP编写文件上传的程序

您可以阅读与"在JAVA中使用正则表达式"相关的教程:
· JAVA正则表达式4种常用功能
· 用java实现简朴的email正则表达式判定
· JAVA正则表达式4种常用功能
· JavaScript正则表达式
· Java与正则表达式(2年级2)
    微笑服务 优质保证 索取样品