Я работаю с библиотекой Smack, и, насколько я понимаю, нет функции для проверки пользовательского jid, который используется при создании нового Connection. (Пожалуйста, исправьте меня, если я ошибаюсь)Smack User validation и профиль Nodeprep stringprep
Итак, я решил написать новый, и для этого начал изучать RFC-6122, который содержит блок ABNF с правилами проверки.
К сожалению, я не очень хорошо знаю специфические вещи Юникода и связанные с BNF вещи, поэтому я не понял, как сделать правильное регулярное выражение в соответствии с этим блоком BNF. Особенно меня смущает такая вещь, как «Nodeprep profile of stringprep», упомянутая в блоке ABNF.
Не могли бы вы прояснить этот вопрос или дать мне несколько советов?