public void convertStrings() {
for (int counter = 0; counter < compare.length; counter++) {
compare[counter] = compare[counter].replace('*','_');
compare[counter] = compare[counter].replaceAll("_",".*");
compare[counter] = compare[counter].replace('?', '.');
}
// System.out.printf("%s", Arrays.toString(compare));
}
public void compareStrings() {
for (int counter = 0; counter < data.length; counter++) {
for (int counter1 = 0; counter1 < compare.length; counter1++) {
if (data[counter].matches(compare[counter1]) == true) {
System.out.printf("%s ", data[counter]);
}
}
System.out.println();
}
}
}java.util.regex.PatternSyntaxException:. Нуль (в java.util.regex.Pattern) ошибка
то, что я пытаюсь сделать, это заменить любой * в моем входе а * так что, когда я сравниваю строку с чем-либо раньше, она игнорирует предыдущие символы. Кроме того, я конвертирую «?» в значение-заполнитель ".". Однако, когда я запускаю скомпилированный код, я получаю эту ошибку, потому что строка преобразует специальные символы в обычные буквы. Как заставить компилятор регистрировать эти специальные символы для выполнения функции?