JS检查输入格式的

来源:百度知道 编辑:UC知道 时间:2024/06/23 16:31:58
Phone : /^((\(\d{3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,11}$/,

Mobile : /^((\(\d{3}\))|(\d{3}\-))?13\d{9}$/,

能帮我解释下这两个语句吗?
另外最好能给我个能够检查输入手机号和电话号都合法的语句,谢谢了

正则表达式,看起来比较麻烦。但是很有用。你搜索一些这些信息,学起来也很快。

验证电话号码
区号+座机号码+分机号码:regexp="^(0[0-9]{2,3}\-)?([2-9][0-9]{6,7})+(\-[0-9]{1,4})?$"

手机(中国移动手机号码):regexp="^((\(\d{3}\))|(\d{3}\-))?13[456789]\d{8}|15[89]\d{8}"

所有手机号码:regexp="^((\(\d{3}\))|(\d{3}\-))?13[0-9]\d{8}|15[89]\d{8}"(新添加了158,159两个号段)

// 表示是一个正则表达式
^ 匹配输入字符串的开始位置
$ 匹配输入字符串的结束位置
| 指明两项之间的一个选择,是一个或操作
\d 匹配一个数字字符。等价于 [0-9]
{n} 匹配确定的n次,\d{3}表示匹配一个3位的数字字符串
? 匹配前面的子表达式零次或一次
{2,3} 最少匹配 2 次且最多匹配 3 次
[1-9] 匹配 1 到 9 任一个数字

总之上面的Phone是只匹配一个固定电话,这个固定电话可以是:
(222)1234567
222-1234567
010-1234567
(010)1234567
0551-1234567
(0551)1234567
1234567
222-021-1234567
所以这个是有点不对的,不过我没实践,理论推导而已,:-D

下面那个可以是:
(123)13123456789
123-13123456789

验证电话号码的正则表达式
区号+座机号码+分机号码:regexp="^(0[0-9]{2,3}\-