Мне нужно найти с помощью рег. выражения строки, которые удовлетворяют сразу все следующие условия:
Примеры строк, которые должны совпадать:
#1212%#
#1212*#
#*#
#%#
#AVEJE#
#242435AVEJE#
Я составил рег. выражение и оно выполняет все условия, кроме одного: оно почему-то совпадает со строкой ##
Само рег. выражение: ^#[0-9]*([A-Z]*|%|\\*)#$
В чем состоит ошибка? Буду рад любой помощи.
У вас [A-Z]* подразумевает, что может быть 0 и более букв. ## как раз под этот случай подпадает.
Надо не *, а + (что подразумевает 1 и более) использовать: ^#[0-9]*([A-Z]+|%|\\*)#$.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей