Итак, у нас есть столбец базы данных, который может содержать что угодно.Unicode, цифры, слова и т. Д.
Однако нам необходимо отправить эти данные во внешнюю службу, и они очень строги в отношении того, что они примут.В основном только на английском языке, слова, цифры и т. Д.
Мы не можем изменить требования к этой услуге, поэтому нам нужно отфильтровать то, что отправляют нам пользователи, прежде чем мы отправим им.
MyНавыки RegEx слабы.Вот что нам нужно:
Символы [a-zA-Z] Числа [0-9] Следующие символы:! @ # $% ^ & * () -_ = +;: ',. /? \
И это все.Конечно, это может быть в любой комбинации.Мы просто хотим удостовериться, что ничего не пропущено в этом списке.
Любая помощь по созданию этого фильтра в Java будет принята с благодарностью.
Кстати, я предполагаю, чтотот же шаблон RegEx будет работать для JavaScript?
РЕДАКТИРОВАТЬ
Вот мой пример (используя Edmastermind29):
public static void main(String[] args) {
String pattern = "^[A-Za-z0-9!@#$%^&*()-_=+;:',./?\\]";
String text = "Hello, I need everything in this string except the { or }";
Pattern p = Pattern.compile(pattern);
Matcher m = p.matcher(text);
// here, I need everything but the {}.
// so I should have: Hello, I need everything in this string except the or
}
ОК, явыяснил, как избежать этой строки.Но как мне получить все, что не отфильтровано?