Извините, я не подписан. Итак, вы смотрите, что такое адресная строка, и если она имеет «PO» в качестве первых букв, то она не должна указывать на них?
«PO BOX», «PO BIN», «BIN», «P.O BOX», «P.O BIN», «P.O», «PO»
Я не понимаю, почему вы смотрите на "Polo Rd", и каким-то образом это, кажется, решает, что вы собираетесь пропустить или не пропустить.
Затем, с другой стороны, вы говорите, что они действительны
Но "Polo Rd", "Robin Rd",
«testbintest» следует принять как
действительный адрес в обоих адресах
линии.
Но сначала вы сказали, что "Polo Rd" недействителен.
Тогда я не получу другие ваши проверочные тесты, как будто я не понимаю, почему у вашего пользователя не может быть этого
"Testbintest"
Как то, что не так с этим. Я думал, что вы просто проверяете адреса ящиков типа P.O, так как вы не отправляете их или что-то в этом роде.
Я потерян
Ваш дальнейший пост говорит, что вы просто хотите проверить только эти слова. Вы можете попробовать это
(\s)*P(\s)*.?(\s)*O((\s)*B(\s)*[O,I](\s)*[N,X])?
Тест с этими выражениями
PO
P.O
P. O
PO
PO BIN
PO BOX
BIN
P.O BOX
P.O BIN
P O 1234
Вы можете попробовать это тоже.
((\s)*[Pp](\s)*(.)?(\s)*[Oo](\s)*)*([Bb](\s)*[OIoi]+(\s)*[NXin])*
Проверено с.
P O 1234
P.O
P. O
PO
PO BIN
PO BOX
BIN
P.O BOX
P.O BIN
Robin road
Robox road
MY little poney P.O test
Testbintest
bob
aagc
Просто не получается "P O 1234"
То, что мне действительно трудно, это то, сколько вы можете ожидать в адресной строке, нужно ли проверять каждое слово?