আমি চূড়ান্ত পোস্টাল কোড এবং জিপ কোড রেজেেক্সের সন্ধান করছি। আমি এমন কিছু সন্ধান করছি যা বিশ্বের সর্বাধিক (আশাবাদী) coverেকে রাখবে।
আমি চূড়ান্ত পোস্টাল কোড এবং জিপ কোড রেজেেক্সের সন্ধান করছি। আমি এমন কিছু সন্ধান করছি যা বিশ্বের সর্বাধিক (আশাবাদী) coverেকে রাখবে।
উত্তর:
কেউ নেই.
বিশ্বব্যাপী ডাক / জিপ কোডগুলি একটি সাধারণ প্যাটার্ন অনুসরণ করে না। কিছু দেশে এগুলি সংখ্যা দ্বারা গঠিত, অন্যগুলিতে তারা সংখ্যার সাথে একটি বর্ণের সংমিশ্রণ হতে পারে, কিছুতে ফাঁকা স্থান থাকতে পারে, অন্যদের বিন্দু থাকতে পারে, অক্ষরের সংখ্যা দুটি থেকে কমপক্ষে ছয় পর্যন্ত পরিবর্তিত হতে পারে ...
আপনি যা করতে পারেন (তাত্ত্বিকভাবে) তা বিশ্বের প্রতিটি দেশের জন্য একটি পৃথক রেজেক্স তৈরি করছে, প্রস্তাবিত আইএমও নয়। তবে আপনি এখনও বৈধতার অংশে নিখোঁজ থাকবেন: জিপ কোডের উপস্থিতি 12345
থাকতে পারে, তবে 12346
নাও হতে 12344
পারে , সম্ভবত এটির অস্তিত্বও নেই। আপনি কীভাবে এটি একটি রেজেক্সের সাথে চেক করবেন?
আপনি পারবেন না।
^\d{5}(?:[-\s]\d{4})?$
ইউনিকোড সিএলডিআরতে প্রতিটি দেশের জন্য পোস্ট কোড রেগেক্স থাকে। (মোট 158 রেইগেক্স!)
core.zip
থেকে ডাউনলোড করুনcommon/supplemental/postalCodeData.xml
কন্টেন্ট থেকে একবার দেখুন (সরাসরি সামগ্রী: সাধারণ / পরিপূরক / পোস্টকোডডেটা.এক্সএমএল )ডাক কোড সহ দেশ-বিদেশের ঠিকানা ফর্ম্যাটিংয়ের তথ্য সহ গুগলেরও একটি ওয়েব পরিষেবা রয়েছে - http://i18napis.appspot.com/address (আমি সেই লিঙ্কটি http://unicode.org/review/pri180/ এর মাধ্যমে পেয়েছি )
সম্পাদন করা
এখানে পোস্টকোডডেটা.এক্সএমএল রেজেক্সের একটি অনুলিপি :
"GB", "GIR[ ]?0AA|((AB|AL|B|BA|BB|BD|BH|BL|BN|BR|BS|BT|CA|CB|CF|CH|CM|CO|CR|CT|CV|CW|DA|DD|DE|DG|DH|DL|DN|DT|DY|E|EC|EH|EN|EX|FK|FY|G|GL|GY|GU|HA|HD|HG|HP|HR|HS|HU|HX|IG|IM|IP|IV|JE|KA|KT|KW|KY|L|LA|LD|LE|LL|LN|LS|LU|M|ME|MK|ML|N|NE|NG|NN|NP|NR|NW|OL|OX|PA|PE|PH|PL|PO|PR|RG|RH|RM|S|SA|SE|SG|SK|SL|SM|SN|SO|SP|SR|SS|ST|SW|SY|TA|TD|TF|TN|TQ|TR|TS|TW|UB|W|WA|WC|WD|WF|WN|WR|WS|WV|YO|ZE)(\d[\dA-Z]?[ ]?\d[ABD-HJLN-UW-Z]{2}))|BFPO[ ]?\d{1,4}"
"JE", "JE\d[\dA-Z]?[ ]?\d[ABD-HJLN-UW-Z]{2}"
"GG", "GY\d[\dA-Z]?[ ]?\d[ABD-HJLN-UW-Z]{2}"
"IM", "IM\d[\dA-Z]?[ ]?\d[ABD-HJLN-UW-Z]{2}"
"US", "\d{5}([ \-]\d{4})?"
"CA", "[ABCEGHJKLMNPRSTVXY]\d[ABCEGHJ-NPRSTV-Z][ ]?\d[ABCEGHJ-NPRSTV-Z]\d"
"DE", "\d{5}"
"JP", "\d{3}-\d{4}"
"FR", "\d{2}[ ]?\d{3}"
"AU", "\d{4}"
"IT", "\d{5}"
"CH", "\d{4}"
"AT", "\d{4}"
"ES", "\d{5}"
"NL", "\d{4}[ ]?[A-Z]{2}"
"BE", "\d{4}"
"DK", "\d{4}"
"SE", "\d{3}[ ]?\d{2}"
"NO", "\d{4}"
"BR", "\d{5}[\-]?\d{3}"
"PT", "\d{4}([\-]\d{3})?"
"FI", "\d{5}"
"AX", "22\d{3}"
"KR", "\d{3}[\-]\d{3}"
"CN", "\d{6}"
"TW", "\d{3}(\d{2})?"
"SG", "\d{6}"
"DZ", "\d{5}"
"AD", "AD\d{3}"
"AR", "([A-HJ-NP-Z])?\d{4}([A-Z]{3})?"
"AM", "(37)?\d{4}"
"AZ", "\d{4}"
"BH", "((1[0-2]|[2-9])\d{2})?"
"BD", "\d{4}"
"BB", "(BB\d{5})?"
"BY", "\d{6}"
"BM", "[A-Z]{2}[ ]?[A-Z0-9]{2}"
"BA", "\d{5}"
"IO", "BBND 1ZZ"
"BN", "[A-Z]{2}[ ]?\d{4}"
"BG", "\d{4}"
"KH", "\d{5}"
"CV", "\d{4}"
"CL", "\d{7}"
"CR", "\d{4,5}|\d{3}-\d{4}"
"HR", "\d{5}"
"CY", "\d{4}"
"CZ", "\d{3}[ ]?\d{2}"
"DO", "\d{5}"
"EC", "([A-Z]\d{4}[A-Z]|(?:[A-Z]{2})?\d{6})?"
"EG", "\d{5}"
"EE", "\d{5}"
"FO", "\d{3}"
"GE", "\d{4}"
"GR", "\d{3}[ ]?\d{2}"
"GL", "39\d{2}"
"GT", "\d{5}"
"HT", "\d{4}"
"HN", "(?:\d{5})?"
"HU", "\d{4}"
"IS", "\d{3}"
"IN", "\d{6}"
"ID", "\d{5}"
"IL", "\d{5}"
"JO", "\d{5}"
"KZ", "\d{6}"
"KE", "\d{5}"
"KW", "\d{5}"
"LA", "\d{5}"
"LV", "\d{4}"
"LB", "(\d{4}([ ]?\d{4})?)?"
"LI", "(948[5-9])|(949[0-7])"
"LT", "\d{5}"
"LU", "\d{4}"
"MK", "\d{4}"
"MY", "\d{5}"
"MV", "\d{5}"
"MT", "[A-Z]{3}[ ]?\d{2,4}"
"MU", "(\d{3}[A-Z]{2}\d{3})?"
"MX", "\d{5}"
"MD", "\d{4}"
"MC", "980\d{2}"
"MA", "\d{5}"
"NP", "\d{5}"
"NZ", "\d{4}"
"NI", "((\d{4}-)?\d{3}-\d{3}(-\d{1})?)?"
"NG", "(\d{6})?"
"OM", "(PC )?\d{3}"
"PK", "\d{5}"
"PY", "\d{4}"
"PH", "\d{4}"
"PL", "\d{2}-\d{3}"
"PR", "00[679]\d{2}([ \-]\d{4})?"
"RO", "\d{6}"
"RU", "\d{6}"
"SM", "4789\d"
"SA", "\d{5}"
"SN", "\d{5}"
"SK", "\d{3}[ ]?\d{2}"
"SI", "\d{4}"
"ZA", "\d{4}"
"LK", "\d{5}"
"TJ", "\d{6}"
"TH", "\d{5}"
"TN", "\d{4}"
"TR", "\d{5}"
"TM", "\d{6}"
"UA", "\d{5}"
"UY", "\d{5}"
"UZ", "\d{6}"
"VA", "00120"
"VE", "\d{4}"
"ZM", "\d{5}"
"AS", "96799"
"CC", "6799"
"CK", "\d{4}"
"RS", "\d{6}"
"ME", "8\d{4}"
"CS", "\d{5}"
"YU", "\d{5}"
"CX", "6798"
"ET", "\d{4}"
"FK", "FIQQ 1ZZ"
"NF", "2899"
"FM", "(9694[1-4])([ \-]\d{4})?"
"GF", "9[78]3\d{2}"
"GN", "\d{3}"
"GP", "9[78][01]\d{2}"
"GS", "SIQQ 1ZZ"
"GU", "969[123]\d([ \-]\d{4})?"
"GW", "\d{4}"
"HM", "\d{4}"
"IQ", "\d{5}"
"KG", "\d{6}"
"LR", "\d{4}"
"LS", "\d{3}"
"MG", "\d{3}"
"MH", "969[67]\d([ \-]\d{4})?"
"MN", "\d{6}"
"MP", "9695[012]([ \-]\d{4})?"
"MQ", "9[78]2\d{2}"
"NC", "988\d{2}"
"NE", "\d{4}"
"VI", "008(([0-4]\d)|(5[01]))([ \-]\d{4})?"
"PF", "987\d{2}"
"PG", "\d{3}"
"PM", "9[78]5\d{2}"
"PN", "PCRN 1ZZ"
"PW", "96940"
"RE", "9[78]4\d{2}"
"SH", "(ASCN|STHL) 1ZZ"
"SJ", "\d{4}"
"SO", "\d{5}"
"SZ", "[HLMS]\d{3}"
"TC", "TKCA 1ZZ"
"WF", "986\d{2}"
"XK", "\d{5}"
"YT", "976\d{2}"
এই নিয়ম ব্যবহার করুন
$ZIPREG=array(
"US"=>"^\d{5}([\-]?\d{4})?$",
"UK"=>"^(GIR|[A-Z]\d[A-Z\d]??|[A-Z]{2}\d[A-Z\d]??)[ ]??(\d[A-Z]{2})$",
"DE"=>"\b((?:0[1-46-9]\d{3})|(?:[1-357-9]\d{4})|(?:[4][0-24-9]\d{3})|(?:[6][013-9]\d{3}))\b",
"CA"=>"^([ABCEGHJKLMNPRSTVXY]\d[ABCEGHJKLMNPRSTVWXYZ])\ {0,1}(\d[ABCEGHJKLMNPRSTVWXYZ]\d)$",
"FR"=>"^(F-)?((2[A|B])|[0-9]{2})[0-9]{3}$",
"IT"=>"^(V-|I-)?[0-9]{5}$",
"AU"=>"^(0[289][0-9]{2})|([1345689][0-9]{3})|(2[0-8][0-9]{2})|(290[0-9])|(291[0-4])|(7[0-4][0-9]{2})|(7[8-9][0-9]{2})$",
"NL"=>"^[1-9][0-9]{3}\s?([a-zA-Z]{2})?$",
"ES"=>"^([1-9]{2}|[0-9][1-9]|[1-9][0-9])[0-9]{3}$",
"DK"=>"^([D|d][K|k]( |-))?[1-9]{1}[0-9]{3}$",
"SE"=>"^(s-|S-){0,1}[0-9]{3}\s?[0-9]{2}$",
"BE"=>"^[1-9]{1}[0-9]{3}$",
"IN"=>"^\d{6}$"
);
প্রতিটি ডাক কোড সিস্টেম কেবল এজেড এবং / অথবা 0-9 এবং কখনও কখনও স্থান / ড্যাশ ব্যবহার করে
প্রতিটি দেশই ডাক কোড ব্যবহার করে না (যেমন ডাবলিনের বাইরে আয়ারল্যান্ড), তবে আমরা এখানে এটিকে উপেক্ষা করব।
সংক্ষিপ্ততম ডাক কোড ফর্ম্যাটটি সিয়েরা লিওনের সাথে NN
দীর্ঘতম আমেরিকান সামোয়া সহ NNNNN-NNNNNN
আপনার একটি জায়গা বা ড্যাশ অনুমতি দেওয়া উচিত।
স্পেস বা ড্যাশ দিয়ে শুরু বা শেষ হওয়া উচিত নয়
এটি উপরের আবরণ করা উচিত:
(?i)^[a-z0-9][a-z0-9\- ]{0,10}[a-z0-9]$
একটি নিয়মিত বহিঃপ্রকাশ দিয়ে পুরো বিশ্বকে coverেকে দেওয়ার চেষ্টা করা সম্পূর্ণভাবে সম্ভব নয় এবং অবশ্যই সম্ভব বা প্রস্তাবিত নয়।
আমার নিজের শিংকে টট করার জন্য নয়, তবে আমি বেশ কিছু নিয়মিত প্রকাশ প্রকাশ করেছি যা আপনাকে সহায়ক বলে মনে হতে পারে।
Basic validation:
^[ABCEGHJ-NPRSTVXY]{1}[0-9]{1}[ABCEGHJ-NPRSTV-Z]{1}[ ]?[0-9]{1}[ABCEGHJ-NPRSTV-Z]{1}[0-9]{1}$
Extended validation:
^(A(0[ABCEGHJ-NPR]|1[ABCEGHK-NSV-Y]|2[ABHNV]|5[A]|8[A])|B(0[CEHJ-NPRSTVW]|1[ABCEGHJ-NPRSTV-Y]|2[ABCEGHJNRSTV-Z]|3[ABEGHJ-NPRSTVZ]|4[ABCEGHNPRV]|5[A]|6[L]|9[A])|C(0[AB]|1[ABCEN])|E(1[ABCEGHJNVWX]|2[AEGHJ-NPRSV]|3[ABCELNVYZ]|4[ABCEGHJ-NPRSTV-Z]|5[ABCEGHJ-NPRSTV]|6[ABCEGHJKL]|7[ABCEGHJ-NP]|8[ABCEGJ-NPRST]|9[ABCEGH])|G(0[ACEGHJ-NPRSTV-Z]|1[ABCEGHJ-NPRSTV-Y]|2[ABCEGJ-N]|3[ABCEGHJ-NZ]|4[ARSTVWXZ]|5[ABCHJLMNRTVXYZ]|6[ABCEGHJKLPRSTVWXZ]|7[ABGHJKNPSTXYZ]|8[ABCEGHJ-NPTVWYZ]|9[ABCHNPRTX])|H(0[HM]|1[ABCEGHJ-NPRSTV-Z]|2[ABCEGHJ-NPRSTV-Z]|3[ABCEGHJ-NPRSTV-Z]|4[ABCEGHJ-NPRSTV-Z]|5[AB]|7[ABCEGHJ-NPRSTV-Y]|8[NPRSTYZ]|9[ABCEGHJKPRSWX])|J(0[ABCEGHJ-NPRSTV-Z]|1[ACEGHJ-NRSTXZ]|2[ABCEGHJ-NRSTWXY]|3[ABEGHLMNPRTVXYZ]|4[BGHJ-NPRSTV-Z]|5[ABCJ-MRTV-Z]|6[AEJKNRSTVWYXZ]|7[ABCEGHJ-NPRTV-Z]|8[ABCEGHLMNPRTVXYZ]|9[ABEHJLNTVXYZ])|K(0[ABCEGHJ-M]|1[ABCEGHJ-NPRSTV-Z]|2[ABCEGHJ-MPRSTVW]|4[ABCKMPR]|6[AHJKTV]|7[ACGHK-NPRSV]|8[ABHNPRV]|9[AHJKLV])|L(0[[ABCEGHJ-NPRS]]|1[ABCEGHJ-NPRSTV-Z]|2[AEGHJMNPRSTVW]|3[BCKMPRSTVXYZ]|4[ABCEGHJ-NPRSTV-Z]|5[ABCEGHJ-NPRSTVW]|6[ABCEGHJ-MPRSTV-Z]|7[ABCEGJ-NPRST]|8[EGHJ-NPRSTVW]|9[ABCGHK-NPRSTVWYZ])|M(1[BCEGHJ-NPRSTVWX]|2[HJ-NPR]|3[ABCHJ-N]|4[ABCEGHJ-NPRSTV-Y]|5[ABCEGHJ-NPRSTVWX]|6[ABCEGHJ-NPRS]|7[AY]|8[V-Z]|9[ABCLMNPRVW])|N(0[ABCEGHJ-NPR]|1[ACEGHKLMPRST]|2[ABCEGHJ-NPRTVZ]|3[ABCEHLPRSTVWY]|4[BGKLNSTVWXZ]|5[ACHLPRV-Z]|6[ABCEGHJ-NP]|7[AGLMSTVWX]|8[AHMNPRSTV-Y]|9[ABCEGHJKVY])|P(0[ABCEGHJ-NPRSTV-Y]|1[ABCHLP]|2[ABN]|3[ABCEGLNPY]|4[NPR]|5[AEN]|6[ABC]|7[ABCEGJKL]|8[NT]|9[AN])|R(0[ABCEGHJ-M]|1[ABN]|2[CEGHJ-NPRV-Y]|3[ABCEGHJ-NPRSTV-Y]|4[AHJKL]|5[AGH]|6[MW]|7[ABCN]|8[AN]|9[A])|S(0[ACEGHJ-NP]|2[V]|3[N]|4[AHLNPRSTV-Z]|6[HJKVWX]|7[HJ-NPRSTVW]|9[AHVX])|T(0[ABCEGHJ-MPV]|1[ABCGHJ-MPRSV-Y]|2[ABCEGHJ-NPRSTV-Z]|3[ABCEGHJ-NPRZ]|4[ABCEGHJLNPRSTVX]|5[ABCEGHJ-NPRSTV-Z]|6[ABCEGHJ-NPRSTVWX]|7[AENPSVXYZ]|8[ABCEGHLNRSVWX]|9[ACEGHJKMNSVWX])|V(0[ABCEGHJ-NPRSTVWX]|1[ABCEGHJ-NPRSTV-Z]|2[ABCEGHJ-NPRSTV-Z]|3[ABCEGHJ-NRSTV-Y]|4[ABCEGK-NPRSTVWXZ]|5[ABCEGHJ-NPRSTV-Z]|6[ABCEGHJ-NPRSTV-Z]|7[ABCEGHJ-NPRSTV-Y]|8[ABCGJ-NPRSTV-Z]|9[ABCEGHJ-NPRSTV-Z])|X(0[ABCGX]|1[A])|Y(0[AB]|1[A]))[ ]?[0-9]{1}[ABCEGHJ-NPRSTV-Z]{1}[0-9]{1}$
^[0-9]{5}(-[0-9]{4})?$
^([A-PR-UWYZ]([0-9]{1,2}|([A-HK-Y][0-9]|[A-HK-Y][0-9]([0-9]|[ABEHMNPRV-Y]))|[0-9][A-HJKS-UW])\ [0-9][ABD-HJLNP-UW-Z]{2}|(GIR\ 0AA)|(SAN\ TA1)|(BFPO\ (C\/O\ )?[0-9]{1,4})|((ASCN|BBND|[BFS]IQQ|PCRN|STHL|TDCU|TKCA)\ 1ZZ))$
কোনও ঠিকানায় আসলে কিছু ইমেল না করা এবং ব্যক্তিটি এটি গ্রহণ করার সময় আপনাকে জানানো ছাড়া নির্ভুলতার গ্যারান্টি দেওয়া সম্ভব নয় তবে আমরা জানি যে ঘটনাগুলি খারাপ তা কেটে দিয়ে আমরা বিষয়গুলি সঙ্কুচিত করতে পারি।
এটি রেগেক্সে না থাকলেও এটি একটি ভাল রেফারেন্সের মতো দেখাচ্ছে ।
সত্যই, যদি না আপনি প্রকৃতপক্ষে আপনার ব্যবহারকারীদের কাছে কিছু প্রেরণ করেন তবে আমার মনে হয় না যে এটি প্রচেষ্টাটির পক্ষে মূল্যবান। এবং যদি আপনি হয় এটা শিপিং, সেখানে ঠিকানা ক্লিনিং টুলস / পরিষেবাগুলি আপনি মধ্যে সন্ধান করতে পারেন এটা উপায় নিজে সহজ করতে হয়।
আমরা নিম্নলিখিত ব্যবহার:
কানাডা
([A-Z]{1}[0-9]{1}){3} //We raise to upper first
আমেরিকা
[0-9]{5} //-or-
[0-9]{5}-[0-9]{4} //10 digit zip
অন্যান্য
হিসাবে গ্রহণ করুন
.*
বিগ জাম্প লাইন ব্রেক, ফাঁকা এবং নিয়ন্ত্রণের অক্ষরগুলি সম্পর্কে ভুলে গিয়েছিল।
আন্তর্জাতিক ডাক কোডগুলি এক ধরণের থামার সমস্যা।
অনুগ্রহ করে নোট করুন যে এটি বেশ শক্ত সমস্যা, যেমন গৃহীত উত্তর দ্বারা বলা হয়েছে। আমি অনুমান করি যদিও এটি জিয়োনিস্টে লোকেরা বাধা দেয় নি। তাদের একটি দেশ তথ্য ফাইল রয়েছে যা এই উত্তরের সাথে পুরোপুরি খাপ খায় না - স্পষ্টতই সীমা 30000 অক্ষরে রয়েছে। প্রায় দেড়শটি দেশের জন্য রেজিেক্সস রয়েছে।
আমি এখানে এই প্রশ্নের সাথে সম্পর্কিত বিটগুলি বের করেছি:
AD ^(?:AD)*(\d{3})$
AM ^(\d{6})$
AR ^([A-Z]\d{4}[A-Z]{3})$
AT ^(\d{4})$
AU ^(\d{4})$
AX ^(?:FI)*(\d{5})$
AZ ^(?:AZ)*(\d{4})$
BA ^(\d{5})$
BB ^(?:BB)*(\d{5})$
BD ^(\d{4})$
BE ^(\d{4})$
BG ^(\d{4})$
BH ^(\d{3}\d?)$
BM ^([A-Z]{2}\d{2})$
BN ^([A-Z]{2}\d{4})$
BR ^(\d{8})$
BY ^(\d{6})$
CA ^([ABCEGHJKLMNPRSTVXY]\d[ABCEGHJKLMNPRSTVWXYZ]) ?(\d[ABCEGHJKLMNPRSTVWXYZ]\d)$
CH ^(\d{4})$
CL ^(\d{7})$
CN ^(\d{6})$
CR ^(\d{4})$
CU ^(?:CP)*(\d{5})$
CV ^(\d{4})$
CX ^(\d{4})$
CY ^(\d{4})$
CZ ^(\d{5})$
DE ^(\d{5})$
DK ^(\d{4})$
DO ^(\d{5})$
DZ ^(\d{5})$
EC ^([a-zA-Z]\d{4}[a-zA-Z])$
EE ^(\d{5})$
EG ^(\d{5})$
ES ^(\d{5})$
ET ^(\d{4})$
FI ^(?:FI)*(\d{5})$
FM ^(\d{5})$
FO ^(?:FO)*(\d{3})$
FR ^(\d{5})$
GB ^(([A-Z]\d{2}[A-Z]{2})|([A-Z]\d{3}[A-Z]{2})|([A-Z]{2}\d{2}[A-Z]{2})|([A-Z]{2}\d{3}[A-Z]{2})|([A-Z]\d[A-Z]\d[A-Z]{2})|([A-Z]{2}\d[A-Z]\d[A-Z]{2})|(GIR0AA))$
GE ^(\d{4})$
GF ^((97|98)3\d{2})$
GG ^(([A-Z]\d{2}[A-Z]{2})|([A-Z]\d{3}[A-Z]{2})|([A-Z]{2}\d{2}[A-Z]{2})|([A-Z]{2}\d{3}[A-Z]{2})|([A-Z]\d[A-Z]\d[A-Z]{2})|([A-Z]{2}\d[A-Z]\d[A-Z]{2})|(GIR0AA))$
GL ^(\d{4})$
GP ^((97|98)\d{3})$
GR ^(\d{5})$
GT ^(\d{5})$
GU ^(969\d{2})$
GW ^(\d{4})$
HN ^([A-Z]{2}\d{4})$
HR ^(?:HR)*(\d{5})$
HT ^(?:HT)*(\d{4})$
HU ^(\d{4})$
ID ^(\d{5})$
IL ^(\d{5})$
IM ^(([A-Z]\d{2}[A-Z]{2})|([A-Z]\d{3}[A-Z]{2})|([A-Z]{2}\d{2}[A-Z]{2})|([A-Z]{2}\d{3}[A-Z]{2})|([A-Z]\d[A-Z]\d[A-Z]{2})|([A-Z]{2}\d[A-Z]\d[A-Z]{2})|(GIR0AA))$
IN ^(\d{6})$
IQ ^(\d{5})$
IR ^(\d{10})$
IS ^(\d{3})$
IT ^(\d{5})$
JE ^(([A-Z]\d{2}[A-Z]{2})|([A-Z]\d{3}[A-Z]{2})|([A-Z]{2}\d{2}[A-Z]{2})|([A-Z]{2}\d{3}[A-Z]{2})|([A-Z]\d[A-Z]\d[A-Z]{2})|([A-Z]{2}\d[A-Z]\d[A-Z]{2})|(GIR0AA))$
JO ^(\d{5})$
JP ^(\d{7})$
KE ^(\d{5})$
KG ^(\d{6})$
KH ^(\d{5})$
KP ^(\d{6})$
KR ^(?:SEOUL)*(\d{6})$
KW ^(\d{5})$
KZ ^(\d{6})$
LA ^(\d{5})$
LB ^(\d{4}(\d{4})?)$
LI ^(\d{4})$
LK ^(\d{5})$
LR ^(\d{4})$
LS ^(\d{3})$
LT ^(?:LT)*(\d{5})$
LU ^(\d{4})$
LV ^(?:LV)*(\d{4})$
MA ^(\d{5})$
MC ^(\d{5})$
MD ^(?:MD)*(\d{4})$
ME ^(\d{5})$
MG ^(\d{3})$
MK ^(\d{4})$
MM ^(\d{5})$
MN ^(\d{6})$
MQ ^(\d{5})$
MT ^([A-Z]{3}\d{2}\d?)$
MV ^(\d{5})$
MX ^(\d{5})$
MY ^(\d{5})$
MZ ^(\d{4})$
NC ^(\d{5})$
NE ^(\d{4})$
NF ^(\d{4})$
NG ^(\d{6})$
NI ^(\d{7})$
NL ^(\d{4}[A-Z]{2})$
NO ^(\d{4})$
NP ^(\d{5})$
NZ ^(\d{4})$
OM ^(\d{3})$
PF ^((97|98)7\d{2})$
PG ^(\d{3})$
PH ^(\d{4})$
PK ^(\d{5})$
PL ^(\d{5})$
PM ^(97500)$
PR ^(\d{9})$
PT ^(\d{7})$
PW ^(96940)$
PY ^(\d{4})$
RE ^((97|98)(4|7|8)\d{2})$
RO ^(\d{6})$
RS ^(\d{6})$
RU ^(\d{6})$
SA ^(\d{5})$
SD ^(\d{5})$
SE ^(?:SE)*(\d{5})$
SG ^(\d{6})$
SH ^(STHL1ZZ)$
SI ^(?:SI)*(\d{4})$
SK ^(\d{5})$
SM ^(4789\d)$
SN ^(\d{5})$
SO ^([A-Z]{2}\d{5})$
SV ^(?:CP)*(\d{4})$
SZ ^([A-Z]\d{3})$
TC ^(TKCA 1ZZ)$
TH ^(\d{5})$
TJ ^(\d{6})$
TM ^(\d{6})$
TN ^(\d{4})$
TR ^(\d{5})$
TW ^(\d{5})$
UA ^(\d{5})$
US ^\d{5}(-\d{4})?$
UY ^(\d{5})$
UZ ^(\d{6})$
VA ^(\d{5})$
VE ^(\d{4})$
VI ^\d{5}(-\d{4})?$
VN ^(\d{6})$
WF ^(986\d{2})$
YT ^(\d{5})$
ZA ^(\d{4})$
ZM ^(\d{5})$
CS ^(\d{5})$
আশা করি আমি কোনও ভুল করিনি, আমার রেজেক্স-ফু বেশ দুর্বল।
যদি কেউ এখনও জিপ কোডগুলি যাচাই করতে আগ্রহী তবে আমি একটি সমাধান পেয়েছি:
ব্যবহার করে Google Geocoding API
আমরা উভয় দেশের কোড এবং একটি জিপ কোড উভয়ই জিপ কোডের বৈধতা যাচাই করতে পারি ।
উদাহরণস্বরূপ আমি ইউক্রেনে থাকি তাই আমি এগুলি যাচাই করতে পারি: https://maps.googleapis.com/maps/api/geocode/json?compferences=postal_code:80380 Skypecountry :UA
বা জেএস এপিআই ব্যবহার করে: https://developers.google.com/maps/docamentation/javascript/geocoding#Comp घटक ফিল্টারিং
80380
ইউক্রেনের জন্য বৈধ জিপ কোথায় , আসলে প্রতিটি (#####) বৈধ।
গুগল ZERO_RESULTS
কিছু না পেলে স্ট্যাটাস ফিরিয়ে দেয় । অথবা OK
এবং উভয়ই সঠিক হলে ফলাফল result
আশা করি এটি সহায়ক হবে।
অন্যরা যেমন উল্লেখ করেছে যে, তাদের সকলকে শাসন করার জন্য একটি রেজেক্স সম্ভাব্য নয়। তবে, আপনি ইউনিভার্সাল ডাক ইউনিয়ন - একটি অল্প পরিচিত ইউএন এজেন্সি থেকে ঠিকানা ফর্ম্যাটিং তথ্য ব্যবহার করার জন্য যতগুলি দেশের জন্য নিয়মিত প্রকাশের কারুকাজ করতে পারেন ।
উদাহরণস্বরূপ, মুষ্টিমেয় দেশগুলির জন্য (পিডিএফ ফর্ম্যাট) ডাক কোড সহ ঠিকানার ফর্ম্যাটিংয়ের নিয়ম এখানে রয়েছে:
সমস্যাটি এমন হতে চলেছে যে পৃথিবীর অপর প্রান্তের দেশগুলির পরিবর্তিত পোস্টাল কোড প্রয়োজনীয়তার সাথে সামঞ্জস্য রাখার আপনার কাছে সম্ভবত কোনও ভাল উপায় নেই এবং যা আপনি সাধারণ ভাষায় ভাগ করেন না। এটি ট্র্যাক করার জন্য আপনার কাছে পর্যাপ্ত পরিমাণ বাজেট না থাকলে আপনি গুগল বা ইয়াহুকে ঠিকানা বৈধ করার দায়িত্ব দেওয়ার চেয়ে প্রায় ভাল।
উভয় সংস্থা একটি প্রোগ্রামেবল এপিআইয়ের মাধ্যমে ঠিকানার অনুসন্ধানের সুযোগ দেয়।
কেন আপনি এই করছেন এবং আপনি যত্ন কেন? টম রিটার যেমন উল্লেখ করেছেন, আপনার কাছে এমনকি কোনও জিপ / ডাক কোড আছে কিনা তা বিবেচ্য নয়, এটি বৈধ কিনা না যতক্ষণ না আপনি যতক্ষণ না ঠিক সেই ঠিকানায় কিছু প্রেরণ করছেন। এমনকি যদি আপনি আশা যে আপনি তাদের কিছু পাঠাবেন কোনদিন , তার মানে এই নয় যে আপনি একটি পোস্টাল কোড প্রয়োজন আজ ।
যেমনটি অন্যত্র উল্লিখিত হয়েছে বিশ্বজুড়ে তারতম্য বিশাল। এমনকি এমন কিছু যা প্যাটার্নের সাথে মেলে তার অর্থ এটি বিদ্যমান না।
তারপরে অবশ্যই অনেকগুলি জায়গা রয়েছে যেখানে পোস্টকোড ব্যবহার করা হয় না (যেমন অনেকটা বা আয়ারল্যান্ড)।
সঠিক পোস্ট কোড থাকার জন্য শিপিংয়ের বাইরেও কারণ রয়েছে। সীমানা অতিক্রমকারী ভ্রমণকারী ট্র্যাভেল এজেন্সিগুলিকে (অবশ্যই ইউরোজোন বাদে) কর্তৃপক্ষকে সময় দেওয়ার আগে এই তথ্য প্রয়োজন। প্রায়শই এই তথ্য একটি এজেন্ট দ্বারা প্রবেশ করা হয় যা এই জাতীয় জিনিসগুলির সাথে পরিচিত হতে পারে বা নাও হতে পারে। যে কোনও পদ্ধতি যা ভুলগুলি হ্রাস করতে পারে তা হ'ল একটি ভাল ধারণা ™
তবে, বিশ্বের সমস্ত ডাক কোডগুলি কভার করে এমন একটি রেজেক্স লেখা পাগল হবে।
প্রতিটি দেশের জন্য অনেকগুলি এজ কেস দেওয়া হয়েছে (যেমন লন্ডনের ঠিকানাগুলি যুক্তরাজ্যের বাকী অংশগুলির জন্য কিছুটা আলাদা ফর্ম্যাট ব্যবহার করতে পারে) আমি মনে করি না যে সম্ভবত কোনও চূড়ান্ত রেজেক্স রয়েছে:
[0-9a-zA-Z]+
মোটামুটি বিস্তৃত প্যাটার্ন (সর্বোপরি ততটা প্রশস্ত নয়) দিয়ে চলে যাওয়ার সেরা, বা প্রতিটি দেশ / অঞ্চলকে এর নিজস্ব নির্দিষ্ট প্যাটার্ন দিয়ে চিকিত্সা করুন!
আপডেট: তবে, প্রচুর ছোট, অঞ্চল নির্দিষ্ট নিয়মের উপর ভিত্তি করে গতিশীলভাবে একটি রেইগেক্স নির্মাণ করা সম্ভব হতে পারে - যদিও পারফরম্যান্স সম্পর্কে নিশ্চিত নয়!
প্রচুর দেশের নির্দিষ্ট নিদর্শনগুলি RegExLib সাইটে পাওয়া যাবে ।
কেউ মেলিং ঠিকানাগুলির ফর্ম্যাটিংয়ের তালিকা সম্পর্কে জিজ্ঞাসা করছিলেন এবং আমি মনে করি তিনি এটিই খুঁজছিলেন ...
ডাক ঠিকানাগুলিতে ফ্র্যাঙ্কের বাধ্যতামূলক গাইড: http://www.columbia.edu/~fdc/postal/ তবে রাস্তার স্তরের সমস্যাগুলিতে খুব বেশি সহায়তা করে না।
আমার কাজ এতে সহায়তার জন্য বেশ কয়েকটি সরঞ্জাম ব্যবহার করে: - এনসিওএ লুকআপ সহ লেেক্সিস-নেক্সিস পরিষেবাগুলি (আপনি "ফ্রি" এর জন্য ঠিকানা মানীকরণ পাবেন) - "মেলিসা ডেটা" http://www.melissadata.com
এটি ইউএস জিপকোড (জিপকোড প্লাস ফোর নয়) বৈধতার জন্য খুব সহজ একটি রেজিএক্স:
(?!([089])\1{4})\d{5}
পাঁচটি অঙ্কের সংখ্যাসূচকটি বৈধ পিনকোডগুলি ব্যতীত 00000
, 88888
& মনে হচ্ছে 99999
।
আমি এই রেজিএক্সটিকে http://regexpal.com/ দিয়ে পরীক্ষা করেছি
এসপি
যদি Zip Code
অক্ষর এবং অঙ্কগুলি (বর্ণানুক্রমিক) মঞ্জুরি দেয় তবে নীচে রেইগেক্স যেখানে এটি মেলে সেখানে ব্যবহার করা হবে, যেখানে একটি হাইপেন ( -
) সহ 5 বা 9 বা 10 অক্ষরীয় অক্ষর রয়েছে :
^([0-9A-Za-z]{5}|[0-9A-Za-z]{9}|(([0-9a-zA-Z]{5}-){1}[0-9a-zA-Z]{4}))$