Използвам следния регулярен израз в моя код на Java.
^.*(?=.{6,20})(?=.*[a-z].*[a-z])(?=.*[A-Z])(?=.*[0-9]).*$
Когато се опитвам да използвам същото в xml като
^.\*(\?=.{6,20})(\?=.\*[a-z].\*[a-z])(\?=.\*[A-Z])(\?=.\*[0-9]).\*$
Не работи. Показва изключение, както е показано по-долу.
java.lang.IllegalArgumentException: cvc-pattern-valid: Стойността „narendra1A“ не е фасетно валидна по отношение на модела „^.*(\?=.{6,20})(\?=.*[a-z]. *[a-z])(\?=.*[A-Z])(\?=.*[0-9]).*$' за тип '#AnonType_passwordcreateUser'.
Може ли някой да помогне в това отношение.
Благодаря,
Нарендра
.*
веднага след^
. Това е ненужно и прави вашия регулярен израз много неефективен. Освен това, ако смятате, че ограничавате дължината на паролата до 6-20 знака, не сте. Низ от 100 знака ще премине този регулярен израз добре. - person Tim Pietzcker   schedule 08.12.2010