У меня есть веб-приложение и приложение для Android, в котором я хочу проверить ввод.Regex Java vs Regex Javascript
Теперь я создал этот Regex в Java:
private static final String NAME_REGEX = "^[\\w ]+$";
if (!Pattern.matches(NAME_REGEX, name)) {
mNameView.setError(getString(R.string.error_field_noname));
focusView = mNameView;
cancel = true;
}
В JavaScript Я хочу, чтобы проверить то же самое, так что я использовал:
var re = /^[\w ]+$/;
if (!re.test(company)) {
...
}
Все отлично работает за исключением того, что версия Java принимает символы ä , ö, ü, ó, á (...) и версия JavaScript не будет.
Не знаете, в чем разница между указанным выше кодом?
В итоге самое главное, что оба (JavaScript и Java) работают точно так же.
Цель: Получить регулярное выражение для JavaScript, что точно так же, как и в Java (^[\\w ]+$)
Попробуйте '^ [\\ wäöüß] + $' – dotvav
Вам нужно будет использовать [* XRegExp *] (http://xregexp.com/), если вы не хотите изобретать колесо. Или создайте класс символов для ваших принятых писем. Нужно ли принимать все базовые буквы Unicode? Взгляните на [мой ответ] (http://stackoverflow.com/a/31115742/3832970). Просто добавьте '_' в класс символов в * re * variable (и удалите первый' # '). –