我有一个匹配所有排除的英国邮政编码的判据
^((AB)([15][0-6]|[24][1-5]|[3][0-9])|(BT)([1][1-79]?|[2346][0-9]?|[5][1-8]?|[7][014-9]?|[8][0-2]?|[9][2-4]?)|(DD)([1][01]?|[2-9])|(DG)([1][0-46]?|[2-9])|(EH)([1234][0-9]?|[5][1-5]?|[6-8]|[9][59]?)|(FK)([1][0-9]?|[2][0-2]?|[3-9])|(GY)([1-9])|(G)([1][1-5]?|[2][0-3]?|[3][1-4]?|[4][0-6]?|[5][1-38]?|[67][0-9]|[8][0-4]|[9])|(HS)[1-9]|(IM)([1-7]|[8][6]?|[9][9]?)|(IV)([14][0-9]|[2][0-8]|[3][0-26]|[5][1-6]|[6-9])|(JE)[1-4]|(KA)([12][0-9]?|[3][0]?|[4-9])|(KW)([1][0-7]?|[2-9])|(KY)([1][0-6]?|[2-8]|[9][9]?)|(ML)([1][0-2]?|[2-9])|(PA)([1246][0-9]?|[37][0-8]?|[589])|(PH)([1][0-8]?|[2][6]?|[3][16]?|[4][249]?|[5-9])|(TD)([1][0-13-4]?|[2-9])|(ZE)[1-3])我需要结合这个正则表达式来检查邮政编码格式是否正确。
^([Gg][Ii][Rr] 0[Aa]{2})|((([A-Za-z][0-9]{1,2})|(([A-Za-z][A-Ha-hJ-Yj-y][0-9]{1,2})|(([A-Za-z][0-9][A-Za-z])|([A-Za-z][A-Ha-hJ-Yj-y][0-9]?[A-Za-z])))) {0,1}[0-9][A-Za-z]{2})$我遇到的问题是用第一个邮政编码进行否定--如果我试图用[^()] regex来包装它的话
,我将如何否定第一条,并将第二条与第二条合并为一个正则表达式?
更新:
我听从了乔治的建议,在某个地方失败了。
^(?!((AB|ab)([15][0-6]|[24][1-5]|[3][0-9])|(BT|bt)([1][1-79]?|[2346][0-9]?|[5][1-8]?|[7][014-9]?|[8][0-2]?|[9][2-4]?)|(DD|dd)([1][01]?|[2-9])|(DG|dg)([1][0-46]?|[2-9])|(EH|eh)([1234][0-9]?|[5][1-5]?|[6-8]|[9][59]?)|(FK|fk)([1][0-9]?|[2][0-2]?|[3-9])|(GY|gy)([1-9])|(G|g)([1][1-5]?|[2][0-3]?|[3][1-4]?|[4][0-6]?|[5][1-38]?|[67][0-9]|[8][0-4]|[9])|(HS|hs)[1-9]|(IM|im)([1-7]|[8][6]?|[9][9]?)|(IV|iv)([14][0-9]|[2][0-8]|[3][0-26]|[5][1-6]|[6-9])|(JE|je)[1-4]|(KA|ka)([12][0-9]?|[3][0]?|[4-9])|(KW|kw)([1][0-7]?|[2-9])|(KY|ky)([1][0-6]?|[2-8]|[9][9]?)|(ML|ml)([1][0-2]?|[2-9])|(PA|pa)([1246][0-9]?|[37][0-8]?|[589])|(PH|ph)([1][0-8]?|[2][6]?|[3][16]?|[4][249]?|[5-9])|(TD|td)([1][0-13-4]?|[2-9])|(ZE|ze)[1-3]) {0,1}[0-9][A-Za-z]{2}$)([Gg][Ii][Rr] 0[Aa]{2})|((([A-Za-z][0-9]{1,2})|(([A-Za-z][A-Ha-hJ-Yj-y][0-9]{1,2})|(([A-Za-z][0-9][A-Za-z])|([A-Za-z][A-Ha-hJ-Yj-y][0-9]?[A-Za-z])))) {0,1}[0-9][A-Za-z]{2})$发布于 2015-01-23 14:10:05
我觉得自己是个冠军!
^(?!((AB|ab)([15][0-6]|[24][1-5]|[3][0-9])|(BT|bt)([1][1-79]?|[2346][0-9]?|[5][1-8]?|[7][014-9]?|[8][0-2]?|[9][2-4]?)|(DD|dd)([1][01]?|[2-9])|(DG|dg)([1][0-46]?|[2-9])|(EH|eh)([1234][0-9]?|[5][1-5]?|[6-8]|[9][59]?)|(FK|fk)([1][0-9]?|[2][0-2]?|[3-9])|(GY|gy)([1-9])|(G|g)([1][1-5]?|[2][0-3]?|[3][1-4]?|[4][0-6]?|[5][1-38]?|[67][0-9]|[8][0-4]|[9])|(HS|hs)[1-9]|(IM|im)([1-7]|[8][6]?|[9][9]?)|(IV|iv)([14][0-9]|[2][0-8]|[3][0-26]|[5][1-6]|[6-9])|(JE|je)[1-4]|(KA|ka)([12][0-9]?|[3][0]?|[4-9])|(KW|kw)([1][0-7]?|[2-9])|(KY|ky)([1][0-6]?|[2-8]|[9][9]?)|(ML|ml)([1][0-2]?|[2-9])|(PA|pa)([1246][0-9]?|[37][0-8]?|[589])|(PH|ph)([1][0-8]?|[2][6]?|[3][16]?|[4][249]?|[5-9])|(TD|td)([1][0-13-4]?|[2-9])|(ZE|ze)[1-3]))^(([Gg][Ii][Rr] 0[Aa]{2})|((([A-Za-z][0-9]{1,2})|(([A-Za-z][A-Ha-hJ-Yj-y][0-9]{1,2})|(([A-Za-z][0-9][A-Za-z])|([A-Za-z][A-Ha-hJ-Yj-y][0-9]?[A-Za-z])))) {0,1}[0-9][A-Za-z]{2})$)https://stackoverflow.com/questions/28109835
复制相似问题