Regex GWT正则表达式在DevMode中工作,而不是在生产中工作
我使用的正则表达式是在DevMode中工作的,但不是一次编译和部署。它是扩展com.google.gwt.user.client.ui.SuggestOracle.suggest的类的一部分:Regex GWT正则表达式在DevMode中工作,而不是在生产中工作,regex,gwt,dev-mode,Regex,Gwt,Dev Mode,我使用的正则表达式是在DevMode中工作的,但不是一次编译和部署。它是扩展com.google.gwt.user.client.ui.SuggestOracle.suggest的类的一部分: @Override public String getDisplayString() { String toReturn = myUser.getName() + " (" + myUser.getUserid() + ") " + (myUser.getCompanyname() ==
@Override
public String getDisplayString() {
String toReturn = myUser.getName() + " (" + myUser.getUserid() + ") " + (myUser.getCompanyname() == null ? "N/A" : myUser.getCompanyname());
return toReturn.replaceAll("(?i)" + "(" + myInput + ")", "<b>$1</b>");
return toReturn;
}
@覆盖
公共字符串getDisplayString(){
字符串toReturn=myUser.getName()+”(“+myUser.getUserid()+”)+(myUser.getCompanyname()==null?“不适用”:myUser.getCompanyname());
返回toreReturn.replaceAll(“(?i)”+”(“+myInput+”),“$1”);
回归回归;
}
正式文件()规定如下:
这两个实现之间存在一些小的不兼容。正则表达式语法中的Java特定构造(例如,[a-z&[^bc]],(?JavaScript不支持
(?i)
切换到不区分大小写的匹配
您最好使用com.google.gwt.regexp.shared.regexp
:
公共字符串getDisplayString(){
字符串toReturn=myUser.getName()+”(“+myUser.getUserid()+”)+(myUser.getCompanyname()==null?“不适用”:myUser.getCompanyname());
返回RegExp.compile(myInput,“ig”).replace(toReturn,“$&”);
}
public String getDisplayString() {
String toReturn = myUser.getName() + " (" + myUser.getUserid() + ") " + (myUser.getCompanyname() == null ? "N/A" : myUser.getCompanyname());
return RegExp.compile(myInput, "ig").replace(toReturn, "<b>$&</b>");
}