正则表达式函数
### 正则表达式函数详解 #### 一、正则表达式基础介绍 正则表达式(Regular Expression)是一种强大的文本处理工具,在编程语言中广泛应用于字符串搜索与替换等操作。通过模式匹配来检查一个字符串是否符合某种特定类型的数据格式或特征。 #### 二、具体函数解析 ##### 1. `checkEmail(strEmail)` - **功能**:验证电子邮件地址的有效性。 - **参数**:`strEmail` - 需要验证的电子邮件地址。 - **返回值**:如果电子邮件地址有效,则返回`true`;否则返回`false`并提示错误信息。 - **实现**: - 使用正则表达式`/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/`来匹配电子邮件地址。这个表达式能够识别常见的电子邮件地址格式,如`name@example.com`。 - 如果`test()`方法返回`true`,表示该邮箱格式正确;反之,则弹出提示框告知用户输入的邮箱格式不正确,并返回`false`。 ##### 2. `isIP(strIP)` - **功能**:验证IP地址的有效性。 - **参数**:`strIP` - 需要验证的IP地址。 - **返回值**:如果IP地址有效,则返回`true`;否则返回`false`。 - **实现**: - 首先检查传入的`strIP`是否为空,如果为空则直接返回`false`。 - 使用正则表达式`/^(\d+)\.(\d+)\.(\d+)\.(\d+)$/g`来匹配标准的IPv4地址格式。 - 如果`test()`方法返回`true`,进一步检查每个数字是否小于256。全部满足条件时返回`true`,否则返回`false`。 ##### 3. `checkMobile(strMobile)` - **功能**:验证手机号码的有效性。 - **参数**:`strMobile` - 需要验证的手机号码。 - **返回值**:如果手机号码有效,则返回`true`;否则返回`false`。 - **实现**: - 使用正则表达式`/^[1][3][0-9]{9}$/`来匹配中国大陆地区的手机号码格式。 - 如果`test()`方法返回`true`,表示手机号码格式正确;否则返回`false`。 ##### 4. `checkPhone(strPhone)` - **功能**:验证固定电话号码的有效性。 - **参数**:`strPhone` - 需要验证的固定电话号码。 - **返回值**:如果固定电话号码有效,则返回`true`;否则返回`false`并提示错误信息。 - **实现**: - 根据电话号码长度的不同,使用不同的正则表达式进行匹配。 - 包含区号的情况:`/^[0][1-9]{2,3}-[0-9]{5,10}$/`。 - 不包含区号的情况:`/^[1-9]{1}[0-9]{5,8}$/`。 - 根据匹配结果返回相应的布尔值,并在不匹配时弹出提示框。 ##### 5. `isNull(str)` - **功能**:判断字符串是否为空或只包含空格。 - **参数**:`str` - 需要判断的字符串。 - **返回值**:如果字符串为空或只包含空格,则返回`true`;否则返回`false`。 - **实现**: - 直接使用`if(str=="")`来判断字符串是否为空。 - 使用正则表达式`/^[]+$`来匹配字符串是否只包含空格。 ##### 6. `isInteger(str)` - **功能**:验证字符串是否为整数。 - **参数**:`str` - 需要验证的字符串。 - **返回值**:如果字符串为整数,则返回`true`;否则返回`false`。 - **实现**: - 使用正则表达式`/^[-]{0,1}[0-9]{1,}$/`来匹配整数格式。 ##### 7. `isNumber(s)` - **功能**:验证字符串是否为数字。 - **参数**:`s` - 需要验证的字符串。 - **返回值**:如果字符串为数字,则返回`true`;否则返回`false`。 - **实现**: - 使用正则表达式`/^[0-9]+$`来匹配数字格式。 ##### 8. `isDecimal(str)` - **功能**:验证字符串是否为十进制数。 - **参数**:`str` - 需要验证的字符串。 - **返回值**:如果字符串为十进制数,则返回`true`;否则返回`false`。 - **实现**: - 先通过`isInteger(str)`判断是否为整数。 - 如果不是整数,则使用正则表达式`/^[-]{0,1}(\d+)[\.]+(\d+)$/`来匹配十进制数格式。 ##### 9. `isPort(str)` - **功能**:验证字符串是否为有效的端口号。 - **参数**:`str` - 需要验证的字符串。 - **返回值**:如果字符串为有效的端口号,则返回`true`;否则返回`false`。 - **实现**: - 首先检查字符串是否为数字。 - 检查数字是否小于65536,这是TCP/IP协议规定的最大端口号。 ##### 10. `isMoney(s)` - **功能**:验证字符串是否为合法的金额格式。 - **参数**:`s` - 需要验证的字符串。 - **返回值**:如果字符串为合法的金额格式,则返回`true`;否则返回`false`。 - **实现**: - 使用正则表达式`/^[0-9]+[\.][0-9]{0,3}$`来匹配金额格式。 以上函数均采用了正则表达式进行字符串验证,确保了数据格式的准确性。这些函数可以应用于多种场景下的数据校验,提高程序的健壮性和用户体验。