Subversion Repositories XServices

Compare Revisions

Ignore whitespace Rev 87 → Rev 93

/xservices/trunk/src/java/net/brutex/xservices/ws/impl/StringServiceImpl.java
20,6 → 20,7
 
import javax.jws.WebService;
 
import net.brutex.xservices.types.StringMatchType;
import net.brutex.xservices.types.StringReplaceType;
import net.brutex.xservices.util.BrutexNamespaces;
import net.brutex.xservices.ws.StringService;
36,10 → 37,7
public StringReplaceType replaceRegEx(String res, String search,
String replace, String flags) throws XServicesFault {
try {
int allflags = 0;
if (flags.contains("i")) {
allflags = allflags + Pattern.CASE_INSENSITIVE;
}
int allflags = getFlags(flags);
Pattern pattern = Pattern.compile(search, allflags);
Matcher matcher = pattern.matcher(res);
int count = 0;
60,4 → 58,40
 
}
 
@Override
public StringMatchType matchRegEx(String res, String search, String flags)
throws XServicesFault {
int allflags = getFlags(flags);
Pattern pattern = Pattern.compile(search, allflags);
Matcher matcher = pattern.matcher(res);
StringMatchType rm = new StringMatchType();
while (matcher.find()) {
rm.addStringMatch(matcher.start(), matcher.end(), matcher.group());
}
return rm;
}
private int getFlags(String flags) {
int allflags = 0;
if(flags.contains("i")) {
allflags = allflags + Pattern.CASE_INSENSITIVE;
}
if(flags.contains("m")) {
allflags = allflags + Pattern.MULTILINE;
}
if(flags.contains("u")) {
allflags = allflags + Pattern.UNICODE_CASE;
}
if(flags.contains("s")) {
allflags = allflags + Pattern.DOTALL;
}
if(flags.contains("d")) {
allflags = allflags + Pattern.UNIX_LINES;
}
if(flags.contains("x")) {
allflags = allflags + Pattern.COMMENTS;
}
return allflags;
}
 
}