2014-10-13 2 views
-1

Я хочу, чтобы проверить строку с этой лаковой:Java регулярное выражение СЧЕТЧ.ФОРМ с шаблоном

Pattern.compile("^0*(([a-q]{6,}|[A-Q]{6,}){6,24})(1{6,})(([a-q]{6,}|[A-Q]{6,}){6,24})(1*0*$)"); 

Длина [a-q] не может быть больше, чем 6. А длина [a-qA-Q] не может быть больше 24.

Например: max 24(min 6(aaaaaa)AAAAAAAbbbbbbbbb)111111...

Но код использует группу (aaaaaa) как 1 элемент и должен считаться 6 элементами. И мне нужно использовать ИЛИ для [a-q]|[A-Q].

Как я могу сделать это с 1 шаблоном?

+0

Я думаю, что вы ищете что-то похожее на этот http://stackoverflow.com/questions/ 469913/regular-expressions-is-there-a-and-operator – Richard

+0

опубликуйте несколько примеров для положительных и отрицательных совпадений. –

+0

Не совсем, мне нужно проверить строку aaaaaaaaAAAAAAA имеют строчные или прописные буквы в группе размером не менее 6, а вся строка меньше 24. Можете ли вы помочь с примером? – Tino

ответ

0

не уверен, если я понял ваш вопрос правильно, но попробовать этот шаблон

^(?=.*([a-qA-Q])\1{5,})[a-qA-Q]{6,24}$ 

Demo

+0

Нет, но спасибо, сначала хочу знать небольшой узор, а затем большой рисунок со всеми маленькими, например, aaaaaa или AAAAAA - это мой маленький узор (мне нужен тот же повтор символа в нижнем или верхнем кассе как минимум 6 раз) И тогда мне нужно, чтобы этот шаблон был меньше 24 символов. x ([a-q] {6,} | [A-q] {6,}) *, и это повторение x раз ... и все символы, которые должны содержать это выражение, должны быть меньше 24, что для меня объясняет это. – Tino

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