作业帮 > 综合 > 作业

java正则表达式将括号里的内容提取出来

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/06/11 20:27:04
java正则表达式将括号里的内容提取出来
如下面这句:
如何将括号里的内容(/patroninfo~S0*chx/1069163/modpinfo)提取出来呢,不要里面的单引号.
1.就用LS的例子来改进吧,LS的例子用正则匹配的捕获型,也就是说除了捕获了/patroninfo~S0*chx/1069163/modpinfo,还捕获了带单引号的 '/patroninfo~S0*chx/1069163/modpinfo‘ (输出 System.out.println(mat.group(0) 就是);
这样无论在效率还是安全性上都有欠缺.
2 Pattern.compile("\\'(.)\\'")也可以改为Pattern pat = Pattern.compile("\'(.)\'"),减少代码冗余和理解复杂度.
捕获用法:
public class Test {
\x05public static void main(String[] args) {
\x05\x05String str = "";
\x05\x05Pattern pat = Pattern.compile("\'(.)\'");
\x05\x05Matcher mat = pat.matcher(str);
\x05\x05if (mat.find()) {
\x05\x05\x05System.out.println(mat.group(1));
\x05\x05}
\x05}
}
非捕获方法:
public class Test {
\x05public static void main(String[] args) {
\x05\x05String str = "";
\x05\x05Pattern pat = Pattern.compile("(?