2013-11-27 40 views
0

任何人都可以帮我定期检查家庭住址吗?我想出/^([\w]([\.,]?)([\s]?)){1,60}$/。除了地址为.,之外,它完成了这项工作。家庭地址的正则表达式

如:Cabalan Rd.,

有没有什么办法,这可能包括.,和/或两者.,

+2

确切的**零**几率你可以正确地“检查”人们拥有的令人难以置信的家庭地址。你所能做的就是确保你有*东西*并确保用户有机会检查它是否正确。 –

+0

除了具有不同的区域之外,不同的国家的地址格式也不相同。此外,有些国家使用非ASCII字符作为地址,否则会失败。 –

回答

1

那么你可以提高你的表情有点多:

/^(?:\w+\.?,?\s?){1,60}$/ 
  • \w+:匹配一个或多个单词字符。
  • \.?,?:试图匹配单个.,,.,或根本没有。
  • \s?:可选空间。
  • (?: ...){1,60}:匹配之前160次之间的项目。
1

使用|述说所有可接受组合:

/^([\w](\.|,|\.,)([\s]?)){1,60}$/ 
1

试着改变你的正则表达式:

/^([\w.,\s]){1,60}$/ 

但不得不说,与正则表达式验证地址不是个好主意。

+0

这将接受两个逗号 –

+0

是的,它会,我会看到从OP的正则表达式的所有规则后,将增强它。 – anubhava