浏览 1327 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2010-04-02
Bboss-util工程项目提供了一个简洁而实用的正则表达式工具类 com.frameworkset.util.VariableHandler 感兴趣的朋友可以到 bbossgroups项目下载地址中下载: http://sourceforge.net/projects/bboss/files/bbossgroups-1.0/bboss-util.zip/download VariableHandler提供了以下静态方法: 1.1.1 分析字符串中的变量,并将所有变量作为字符数组返回 分析字符串中的变量,并将所有变量作为字符数组返回,变量定义的格式必须为${varname},例如:inputString 为${context}/${context0}/${context1}/bbossutil,返回的数组的内容为{ "context" , "context0", "context1"}. public static String[] variableParser(String inputString) 1.1.2 分析字符串中的变量,并将所有变量作为字符数组返回,指定变量定义的格式 分析字符串中的变量,并将所有变量作为字符数组返回,变量定义的格式由pretoken和endtoken决定,例如:pretoken为#[,endtoken为](实际定义时要对pretoken和endtoken中的正则表达式特殊字符转义,转义符为\\,所以pretoken为#\\[,endtoken为\\]);输入的串为:"#[context]/#[context0]/#[context0]/bbossutil",返回的结果为{ "context" , "context0", "context1"}. public static String[] variableParser(String inputString,String pretoken,String endtoken) 1.1.3 分析字符串中的变量,并将所有变量作为字符数组返回,同时也将原来串中所有的变量替换为 substitution指定的串 分析字符串中的变量,并将所有变量作为字符数组返回,,变量定义的格式必须为${varname},同时也将原来串中所有的变量替换为 substitution指定的串,并将替换后的串返回,例如:substitution为?,即将所有的变量替换为?号 inputString 为${context}/${context0}/${context1}/bbossutil,返回的数组的内容为{ "context" , "context0", "context1"},返回的新串为: ?/?/?/bbossutil public static String[][] parser2ndSubstitution(String inputString, String substitution) 1.1.4 分析字符串中的变量,并将所有变量作为字符数组返回,同时也将原来串中所有的变量替换为 substitution指定的串,指定变量格式 分析字符串中的变量,并将所有变量作为字符数组返回,,变量定义的格式必须为${varname},同时也将原来串中所有的变量替换为 substitution指定的串,并将替换后的串返回,例如:substitution为?,即将所有的变量替换为?号 变量定义的格式由pretoken和endtoken决定,例如:pretoken为#[,endtoken为](实际定义时要对pretoken和endtoken中的正则表达式特殊字符转义,转义符为\\,所以pretoken为#\\[,endtoken为\\]); 输入的串为:"#[context]/#[context0]/#[context0]/bbossutil",返回的结果为{ "context" , "context0", "context1"}.,返回的新串为: ?/?/?/bbossutil public static String[][] parser2ndSubstitution(String inputString,String pretoken,String endtoken ,String substitution) 1.2 实用示例 @org.junit.Test public void testStringReplace() { String pretoken = "#\\["; String endtoken = "\\]"; String url = "#[context]/#[context0]/#[context0]/ bbossutil "; String[][] vars = VariableHandler.parser2ndSubstitution(url, pretoken, endtoken, "?"); System.out.println(vars[0][0]); System.out.println(vars[1][0]); System.out.println(vars[1][1]); System.out.println(vars[1][2]); } @org.junit.Test public void testDefaultStringReplace() { String url = "${context}/${context0}/${context1}/ bbossutil "; String[][] vars = VariableHandler.parser2ndSubstitution(url, "?"); System.out.println(vars[0][0]); System.out.println(vars[1][0]); System.out.println(vars[1][1]); System.out.println(vars[1][2]); } @org.junit.Test public void testVariableParser() { String pretoken = "#\\["; String endtoken = "\\]"; String url = "#[context]/#[context0]/#[context1]/ bbossutil "; String[] vars = VariableHandler.variableParser(url, pretoken, endtoken); System.out.println(vars[0]); System.out.println(vars[1]); System.out.println(vars[2]); } @org.junit.Test public void testDefaultVariableParser() { String url = "${context}/${context0}/${context1}/ bbossutil "; String[] vars = VariableHandler.variableParser(url); System.out.println(vars[0]); System.out.println(vars[1]); System.out.println(vars[2]); } 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |