正则表表达式Utility
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]);
}
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]);
}