读书人

记要的

发布时间: 2012-08-29 08:40:14 作者: rapoo

记录的

应package com.yangxiutian.test;

import java.util.regex.Matcher;import java.util.regex.Pattern;/* * stop字母任意组合的正则表达式 \b(?i)[s|t|o|p]{4}\b */public class Test{    public static void main(String[] args)    {        //System.out.println("sTop".matches("(?i)[s|t|o|p]{4}"));        //        STRING STR = "ABC";        //        SYstem.out.println(str.toUpperCase());        StringBuffer sb = new StringBuffer(                "select * from ims_business where u_operation_name like '%pi%' or u_description like '%ff%' or u_description like '%ff%'");        Pattern p = Pattern.compile("\\s+like");//追加后括号        Matcher m = p.matcher(sb);        while (m.find())        {            System.out.println(m.start());            sb.insert(m.start(), ")");        }        System.out.println(sb);        p = Pattern.compile("\\S+\\s+like");//追加前括号        m = p.matcher(sb);        while (m.find())        {            System.out.println(m.start());            sb.insert(m.start(), "|^_^|");//由于括号会影响,所以先替换成"|^_^|"再将"|^_^|"替换成"upper("        }        String s = sb.toString().replace("|^_^|", "upper(");        System.out.println(s);    }}?

?该有三个"like"可是第二遍找的时候为什么只有两个

读书人网 >编程

热点推荐