当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:14:00  来源:本站整理

在Java中操纵正则表达式[Java编程]

赞助商链接



  本文“在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>");
}
%>


  以上是“在Java中操纵正则表达式[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 在java中产生切确的行为
  • rtti在java造型前的查抄
  • <b>如安在Java编程中操纵线程</b>
  • cookie技术在Java ME平台的操纵与实现
  • 在Java中操纵VC++组件
  • 在Java中操纵SQLite的教程
  • 在Java中读取写入XML文件(DEMO_004)
  • 在Java操纵程序中成立图象
  • 在Java中操纵Factory Method筹划情势
  • <b>在Java中操纵筹划情势之Singleton</b>
  • <b>在Java中操作UDP</b>
  • 在Java中举行事件处理的办法
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .