2016-06-13 2 views
0

Мы решили поддержать другие языки по нашему проекту, и я начал локализовать его.Как обрабатывать проверки (RegEx) при локализации приложения

В некоторых текстовых полях мы используем текстовые подтверждения, где мы допускаем только определенные символы, такие как только алфавиты от a до z или только определенные символы. Когда мы запускаем наше приложение на других языках, таких как иврит или хинди, пользователь не сможет ввести какой-либо текст в эти текстовые поля из-за проверки.

Как мы можем сделать эти правила localize \ Globalize? Как обрабатывать эти типы сценариев при локализации приложения

+0

Я предлагаю делать атрибут, который локализуется реализации. –

ответ

0

Используйте {L} вместе с вашим Regex для достижения необходимой проверки для всех языков.

Чтобы соответствовать любому письму характера любого использования языка:

\p{L} 

Если вы хотите, чтобы соответствовать номерам:

[\p{L}\p{Nd}]+ 

`\p{L}` ... matches a character of the unicode category letter. 
      it is the short form for [\p{Ll}\p{Lu}\p{Lt}\p{Lm}\p{Lo}] 
       \p{Ll} ... matches lowercase letters. (abc) 
       \p{Lu} ... matches uppercase letters. (ABC) 
       \p{Lt} ... matches titlecase letters. 
       \p{Lm} ... matches modifier letters. 
       \p{Lo} ... matches letters without case. (中文) 

\p{Nd} ... соответствует характеру юникода категории десятичного знака.

Просто замените: ^[a-zA-Z0-9\s]+$ с ^[\p{L}0-9\s]+$

Смежные вопросы