JavaScript正则表达式实战:匹配、统一空格、数字检测与电话号码验证
138 浏览量
更新于2024-07-15
收藏 168KB PDF 举报
"经典JavaScript正则表达式实战(附pdf)——包含各种正则表达式实例,用于匹配、替换和验证文本"
在JavaScript中,正则表达式是一种强大的工具,用于处理字符串,包括查找、替换和提取特定模式的文本。在提供的部分内容中,我们看到了几个实用的正则表达式示例,下面将详细解释这些知识点。
1. **匹配结尾的数字**
正则表达式 `/\d+$/g` 用于匹配字符串末尾的一个或多个连续数字。`$` 表示字符串的结束,`\d` 是匹配任何数字的特殊字符,`+` 表示前面的元素可以出现一次或多次,`g` 是全局标志,意味着在整个字符串中搜索,而不仅仅是第一个匹配项。
2. **统一空格个数**
使用 `/\s+/g` 可以匹配一个或多个连续的空格,并用 `str.replace(reg, "")` 进行替换。这里的 `\s` 是匹配任何空白字符(包括空格、制表符、换页符等)的特殊字符,`+` 意味着可以连续出现多个,`g` 标志确保所有匹配都被替换。
3. **判断字符串是否由数字组成**
函数 `isDigit(str)` 使用正则表达式 `/^\d*$/` 来检查字符串是否只包含数字。`^` 表示字符串的开始,`\d*` 匹配零个或多个数字,`$` 表示字符串的结束。`test()` 方法用于测试字符串是否符合正则表达式的模式。
4. **电话号码正则**
电话号码的正则表达式 `/^\d{3,4}-\d{7,8}(-\d{3,4})?$/` 分为几部分:
- `^\d{3,4}` 匹配3到4位的区号,`^` 表示字符串开始。
- `-` 是字面量的破折号。
- `\d{7,8}` 匹配7到8位的电话号码。
- `(-\d{3,4})?` 是一个可选的分机号,`\d{3,4}` 匹配3到4位数字,前面的 `(-` 和 `)?` 表示分机号是可选的,且如果存在,必须以破折号开始。
5. **手机号码正则**
手机号码的正则表达式 `/^0*(13|15)\d{9}$/` 设计用来匹配130-139和150-159开头的11位手机号码,忽略前面的0。`^0*` 匹配零个或多个开头的0,`(13|15)` 匹配13或15,`\d{9}` 匹配后面9位数字。
这些示例展示了JavaScript正则表达式在实际中的应用,从简单的文本处理到复杂的格式验证。理解并熟练使用正则表达式是JavaScript开发中的重要技能,能够帮助开发者高效地处理字符串数据。
2024-04-08 上传
2023-05-14 上传
2023-06-03 上传
2023-02-06 上传
2023-08-14 上传
2023-09-01 上传
weixin_38601390
- 粉丝: 4
- 资源: 909
最新资源
- react_website
- HCMGIS_Caytrong_Local
- 毕业设计&课设--毕业设计之鲜花销售网站的设计与实现.zip
- django-compiling-loader:Django的编译模板加载器
- Excel模板送货单EXCEL模板.zip
- tfbert:一个使用tf2复现的bert模型库
- 商用服务机器人行业研究报告-36氪-2019.8-47页.rar
- 愤怒的小鸟
- recommend-go:用户偏好推荐系统
- react-selenium-ui-test-example:示例项目显示了如何将Selenium Webdriver与Mocha结合使用以在本地环境中运行UI级别测试
- AttachmentManager:附件管理器库从Android设备中选择文件图像
- Excel模板财务报表-现金收支日记账.zip
- jquery-browserblacklist:处理浏览器黑名单的 jQuery 插件
- 毕业设计&课设--毕业设计--在线挂号系统APP(VUE).zip
- 017.长治市行政区、公交线路、 物理站点、线路站点、建成区分布卫星地理shp文件(2021.3.28)
- yfcmf-tp6:yfcmf新版本,基于thinkphp6.0和fastadmin