欢迎光临
我们一直在努力

在java中使用正则表达式_java认证

建站超值云服务器,限时71元/月

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, \” cat \”);

   }

   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
   {

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

   }

   p = Pattern.compile(\”a+\”);

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

   for(i=0;i

   {

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

   }

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

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

   for(i=0;i

   {

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

   }

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

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

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

   for(i=0;i

   {

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

   }

   %>

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 在java中使用正则表达式_java认证
分享到: 更多 (0)