This commit is contained in:
Vladimir Krivosheev
2013-08-27 17:49:15 +02:00
parent a2fff55d1c
commit 3dddec40b2
@@ -18,6 +18,8 @@ package com.intellij.util;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.util.containers.HashMap;
import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.Nullable;
import java.util.List;
import java.util.Map;
@@ -25,9 +27,6 @@ import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.regex.PatternSyntaxException;
import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.Nullable;
public class PatternUtil {
private static final Logger LOG = Logger.getInstance("#com.intellij.util.PatternUtil");
private static final HashMap<String, String> ourEscapeRules = new HashMap<String, String>();
@@ -50,17 +49,17 @@ public class PatternUtil {
}
private static void escape2(char symbol) {
ourEscapeRules.put(""+symbol, "\\" + symbol);
ourEscapeRules.put(String.valueOf(symbol), "\\" + symbol);
}
public static String convertToRegex(String mask) {
List<String> strings = StringUtil.split(mask,"\\");
StringBuffer pattern = new StringBuffer();
List<String> strings = StringUtil.split(mask, "\\");
StringBuilder pattern = new StringBuilder();
String separator = "";
for (String string:strings) {
for (String string : strings) {
string = StringUtil.replace(string, ".", "\\.");
for (Map.Entry<String, String> e: ourEscapeRules.entrySet()) {
for (Map.Entry<String, String> e : ourEscapeRules.entrySet()) {
string = StringUtil.replace(string, e.getKey(), e.getValue());
}
pattern.append(separator);