Японский почтовый индекс имеет такую структуру, как 123-5678, я создаю шаблон "/\ d {3} [-]\d {4}\b/g", и у меня есть такой абзац
Sample text for testing:
abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ 12555553-3456 000-1245 145-333333
0123456789 +-.,!@#$%^&*();\/|<>"'
12345 -98.7 3.141 .6180 9,000 +42
555.123.4567 +1-(800)-555-2468
[email protected] [email protected]
www.demo.com http://foo.co.uk/
http://regexr.com/foo.html?q=bar
Я тестирую patten в http://www.regexr.com/, я получаю результаты 553-3456, 000-1245 и 555-2468, но я хочу найти любую строку, не содержащую 1, 2,... письмо непрерывны до и после: "3 буквы и минус-символ и 4 числовые буквы". Я имею в виду, что строка "+ 1- (800) -555-2468" не является результатом, который я хочу. Может быть 322-5588, но не xxx322-5588xxx. xxx - один или несколько символов символа или буквы. Пожалуйста, ознакомьтесь с http://www.regexr.com/ и моим шаблоном " /\ d {3} [-]\d {4}\b/g ", чтобы понять, чего я хочу.
Пожалуйста, помогите мне и извините за мой плохой английский.
Просто добавьте \b перед выражением:
/\b\d{3}[-]\d{4}\b/g
Если я правильно понял, в примере вы дали единственный результат, который вам нужен, это "000-1245".
Если это так, попробуйте следующее regex: /[\s?]\d{3}[-]\d{4}\b/g
.
322-5588
действительным почтовым индексом?