常用的正则表达式(regularExpression)
### 常用的正则表达式(regularExpression) 正则表达式是一种强大的文本处理工具,在数据验证、字符串提取等方面有着广泛的应用。本文将详细解释给出的正则表达式及其应用场景。 #### 1. Email: \b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b 此正则表达式用于匹配电子邮件地址。具体解释如下: - `\b` 表示单词边界,确保整个词组是独立的。 - `[A-Z0-9._%-]+` 匹配一个或多个大写字母、数字、点号、下划线、百分号或减号。 - `@` 匹配“@”符号。 - `[A-Z0-9.-]+` 匹配一个或多个大写字母、数字、点号或减号。 - `\.` 匹配点号。 - `[A-Z]{2,4}` 匹配两个到四个大写字母,通常表示顶级域名如.com、.net等。 - `\b` 表示单词边界。 **应用场景:** - 在表单验证中检查用户输入的邮箱格式是否正确。 - 数据清洗时过滤不符合规范的电子邮件地址。 #### 2. 匹配中文字符的正则表达式: [\u4e00-\u9fa5] 这个正则表达式用于匹配中文字符,其中`\u4e00-\u9fa5`代表了Unicode编码中所有常用汉字的范围。 **应用场景:** - 验证用户输入的名字是否含有中文字符。 - 对文档进行语言分析,提取出所有的中文内容。 #### 3. 匹配双字节字符(包括汉字在内):[^\x00-\xff] 该表达式用于匹配双字节字符,即非ASCII字符。`\x00-\xff`代表了ASCII码的范围,取反则匹配所有非ASCII字符。 **应用场景:** - 检查字符串中是否包含非英文字符,比如中文、日文等。 - 文本处理时剔除非英文字符,保留纯英文内容。 #### 4. 匹配空白行的正则表达式:\n\s*\r 此正则表达式用于匹配空白行。具体来说: - `\n` 表示换行符。 - `\s*` 表示任意数量的空白字符。 - `\r` 表示回车符。 **应用场景:** - 清洗文本数据时去除不必要的空白行。 - 处理多行文本数据,查找并删除空白行。 #### 其他常见正则表达式 除了以上介绍的正则表达式之外,还有其他几种常用的匹配规则: - **HTML标签**:`<(\S*?)[^>]*>.*?</\1>|<.*?/>` - `<(\S*?)[^>]*>` 匹配开始标签,`\1`表示引用前面匹配的内容。 - `.*?</\1>` 匹配中间内容及结束标签。 - `<.*?/>` 匹配自闭合标签。 - **应用场景:** 提取HTML文档中的标签或内容,用于解析HTML文档。 - **匹配首尾空白**:`^\s*|\s*$` - `^\s*` 匹配开头的空白字符。 - `\s*$` 匹配结尾的空白字符。 - **应用场景:** 清除字符串两端的空白字符。 - **匹配网址(URL)**:`[a-zA-z]+://[^\s]*` - `[a-zA-z]+://` 匹配协议头,如http://、https://等。 - `[^\s]*` 匹配后面的内容直至遇到空格或其他非字符。 - **应用场景:** 验证用户输入的网址格式是否正确。 - **匹配电话号码**:`\d{3}-\d{8}|\d{4}-\d{7}` - `\d{3}-\d{8}` 匹配形如010-12345678的电话号码。 - `\d{4}-\d{7}` 匹配形如010-1234567的电话号码。 - **应用场景:** 验证用户输入的电话号码格式是否正确。 - **匹配邮政编码**:`[1-9]\d{5}(?!\d)` - `[1-9]` 匹配首位非零数字。 - `\d{5}` 匹配五位数字。 - `(?!\d)` 负向前瞻,确保数字后不跟其他数字。 - **应用场景:** 验证用户输入的邮政编码格式是否正确。 - **匹配身份证号**:`\d{15}|\d{18}` - `\d{15}` 匹配15位的身份证号。 - `\d{18}` 匹配18位的身份证号。 - **应用场景:** 验证用户输入的身份证号码格式是否正确。 - **匹配IP地址**:`\d+\.\d+\.\d+\.\d+` - `\d+` 匹配一个或多个数字。 - `\.` 匹配点号。 - **应用场景:** 验证用户输入的IP地址格式是否正确。 - **匹配整数**: - `^[1-9]\d*$` 匹配正整数。 - `^-?[1-9]\d*$` 匹配带符号的整数。 - `^[1-9]\d*|0$` 匹配非负整数。 - `^-[1-9]\d*|0$` 匹配非正整数。 - **应用场景:** 验证用户输入的数值是否为整数。 - **匹配浮点数**: - `^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$` 匹配正浮点数。 - `^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$` 匹配带符号的浮点数。 - `^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$` 匹配非负浮点数。 - `^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$` 匹配非正浮点数。 - **应用场景:** 验证用户输入的数值是否为浮点数。 - **匹配字母串**: - `^[A-Za-z]+$` 匹配由26个英文字母组成的字符串。 - `^[A-Z]+$` 匹配由26个大写英文字母组成的字符串。 - `^[a-z]+$` 匹配由26个小写英文字母组成的字符串。 - `^[A-Za-z0-9]+$` 匹配由26个英文字母和数字组成的字符串。 - `^\w+$` 匹配由26个英文字母、数字或下划线组成的字符串。 - **应用场景:** 验证用户输入的字符串是否符合指定的字母或字母数字组合模式。

























- 粉丝: 0
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 基于SSM+微信小程序的在线课堂微信小程序(1).zip
- java毕业设计,基于微信小程序的高校餐厅食品留样管理系统(1).zip
- 微信小程序。uni-app,vue2.zip
- java毕业设计,基于微信小程序的社区车位租赁系统的设计与实现.zip
- C信息(微信小程序).zip
- taro微信小程序项目.zip
- unity3d塔防游戏的设计与实现--大学论文.doc
- 微信小程序:jim hacker.zip
- 美图网、微信小程序.zip
- 软件年终工作总结.docx
- 基于SSM+微信小程序的在线课堂微信小程序(2).zip
- 名片微信小程序.zip
- 微信小程序:微痕电影.zip
- 微信小程序框架.zip
- 一个微信小程序(1).zip
- 外研版选择性必修三Unit4AglimpseofthefutureDevelopingideas课件.ppt


