正则表达式匹配特殊字符完全指南
72 浏览量
更新于2024-08-31
收藏 81KB PDF 举报
正则表达式是用于匹配字符串模式的强大工具,广泛应用于数据验证、文本搜索和替换等多个领域。本文主要探讨了如何使用正则表达式来匹配各种特殊字符。
在正则表达式中,特殊字符通常需要转义才能作为匹配的字符。例如,`(` 和 `)` 在正则表达式中用于分组,如果要匹配它们本身,就需要写成 `\(` 和 `\)`。以下是一些常见特殊字符的匹配方法:
1. 可见的非字母和数字的符号:`[(?=[\x21-\x7e]+)[^A-Za-z0-9]]` 这个正则表达式匹配所有ASCII码在`\x21`(感叹号)到`\x7e`(波浪线)之间的字符,这些字符包括了键盘上所有可见的非字母和数字的符号。
2. 防止输入框输入特殊字符的验证:`var patrn = /[`~!@#$%^&*()_\-+=<>?:"{}|,.\/;'\\[\]·~!@#¥%……&*()——\-+={}|《》?:“”【】、;‘',。、]/im;` 这个正则表达式涵盖了英文和中文状态下的键盘特殊字符,用于验证输入是否包含这些特殊字符,如果包含则返回 `false`。
3. 匹配非空非字母非数字字符:`[^\w\s]+` 这个正则表达式会匹配任何不是单词字符(字母、数字、下划线)和空白字符的字符。
接下来是一系列关于数字匹配的正则表达式:
- 仅数字:`^[0-9]*$`
- n位数字:`^\d{n}$`
- 至少n位数字:`^\d{n,}$`
- m-n位数字:`^\d{m,n}$`
- 零或非零开头的数字:`^(0|[1-9][0-9]*)$`
- 最多两位小数的非零数字:`^([1-9][0-9]*)+(.[0-9]{1,2})?$`
- 带1-2位小数的正数或负数:`^(\-)?\d+(\.\d{1,2})?$`
- 正数、负数、和小数:`^(\-|\+)?\d+(\.\d+)?$`
- 两位小数的正实数:`^[0-9]+(.[0-9]{2})?$`
- 1~3位小数的正实数:`^[0-9]+(.[0-9]{1,3})?$`
- 非零的正整数:`^[1-9]\d*$` 或 `^([1-9][0-9]*){1,3}$` 或 `^\+?[1-9][0-9]*$`
- 非零的负整数:`^\-[1-9][]0-9"*$` 或 `^-[1-9]\d*$
- 非负整数:`^\d+$` 或 `^[1-9]\d*|0$`
- 非正整数:`^-[1-9]\d*|0$` 或 `^((-\d+)|(0+))$`
- 非负浮点数:`^\d+(\.\d+)?$` 或 `^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$`
- 非正浮点数:`^((-\d+(\.\d+)?)|(0+(\.0+)?))$` 或 `^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$`
- 正浮点数:`^[1-9]\d*(\.\d+)?$`
掌握这些正则表达式,可以帮助开发者更精确地对字符串中的数字部分进行验证和处理。在实际应用中,可以根据具体需求调整这些正则表达式,以满足特定的输入格式要求。
2014-11-14 上传
2011-08-18 上传
2020-07-22 上传
2020-10-23 上传
2020-10-16 上传
2010-04-20 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
weixin_38732740
- 粉丝: 2
- 资源: 895
最新资源
- FX1S-30MT.zip三菱PLC编程案例源码资料编程控制器应用通讯通信例子程序实例
- guitar-tuner:基于浏览器的吉他调音器
- exemplo-placeholder
- 行业分类-设备装置-可预置于建筑外墙体的排烟、通气设备连接组件.zip
- 2.2版本EDEM+FLUENT耦合接口编译工具.rar
- Signal-Processing:关于压缩感知和小波变换的一些项目
- leb_data_viz
- 自定义剪贴板数据类型的应用-易语言
- 行业分类-设备装置-可视智能卡擦写设备.zip
- raspberry-pi:测试Mono存储库
- Eventor:课程的最终项目(团队项目2)
- Quantify:迄今为止,这是我最好的项目之一-动态壁纸应用
- LinkedInClone-CC-HU
- aframe-sandbox:每个虚拟主机框架的区域测试/每个VR的A-Frame
- matebook 13 14 2018-2020 黑苹果 最新 EFI opencore版 Monterey 12.3
- 行业分类-设备装置-可移动式井字形型钢脚手架.zip