什么是java.util.regex.Pattern.quote(String arg)的GWT替换
在我的应用程序中,我需要以下代码:
string1.replaceAll(string2,myConstatntString) 问题是string1和string2可以包含特殊符号,如'(‘. 我想使用java.util.regex.Pattern.quote(String arg)引用string2: string1.replaceAll(Pattern.quote(string2),myConstatntString); 但java.util.regex.Pattern在GWT客户端不可用. GWT是否有任何替换Pattern.quote? 解决方法
我相信没有,因为
JavaScript没有自己的方法.你可以做的是使用String.replace()而不是String.replaceAll(),因为你根本不需要regexp.如果你这样做,你将不得不编写自己的方法.
这是在JavaScript中完成的:Is there a RegExp.escape function in Javascript? 这就是在Java中完成的方式: public static String quote(String s) { int slashEIndex = s.indexOf("E"); if (slashEIndex == -1) return "Q" + s + "E"; StringBuilder sb = new StringBuilder(s.length() * 2); sb.append("Q"); slashEIndex = 0; int current = 0; while ((slashEIndex = s.indexOf("E",current)) != -1) { sb.append(s.substring(current,slashEIndex)); current = slashEIndex + 2; sb.append("E\EQ"); } sb.append(s.substring(current,s.length())); sb.append("E"); return sb.toString(); } 来自:http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b14/java/util/regex/Pattern.java (Java 1.5中的实际实现) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |