EL表达式大全:正则验证实例
需积分: 9 95 浏览量
更新于2024-09-15
收藏 7KB TXT 举报
"常用EL表达式集合,包括正则表达式,用于数据验证等场景。"
在Java开发中,EL(Expression Language)表达式是JSP 2.0引入的一种轻量级的脚本语言,主要用于简化对JavaBeans属性的访问。然而,这里的"EL表达式"可能是指正则表达式(Regular Expressions),而非JSP EL。正则表达式是一种强大的文本处理工具,广泛用于数据验证、搜索、替换等场景。
以下是一些常见的正则表达式模式及其用途:
1. `"^\d+$"`:匹配一个或多个数字,不包含其他字符。常用于验证纯数字输入。
2. `"^[0-9]*[1-9][0-9]*$"`:匹配至少有一个非零数字的字符串,避免仅包含零的情况。
3. `"^((-\d+)|(0+))$"`:匹配一个可选的负号后跟一个或多个数字,或者只包含零的字符串。常用于处理负数和零。
4. `"^-?[0-9]*[1-9][0-9]*$"`: 匹配一个可选的负号,然后是任意数量的数字,至少包含一个非零数字。这是更通用的整数正则表达式。
5. `"^\d+(\.\d+)?$"`:匹配一个整数或小数,允许有可选的小数点和小数部分。适用于基本的数字验证。
6. `"^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$"`:更严谨的浮点数正则表达式,确保小数部分不全是零。
7. `"^((-\d+(\.\d+)?)|(0+(\.0+)?))$"`:类似6,但同时支持正负数和零。
8. `"^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$"`: 更加复杂的小数正则表达式,确保至少有一位非零数字。
9. `"^-?\d+$(\.\d+)?$"`:另一种表示浮点数的正则,允许负数,整数或小数。
接下来是一些针对特定字符类型的正则表达式:
10. `"^[A-Za-z]+$"`:匹配由大小写字母组成的字符串,无数字或其他字符。
11. `"^[A-Z]+$"`:匹配仅由大写字母组成的字符串。
12. `"^[a-z]+$"`:匹配仅由小写字母组成的字符串。
13. `"^[A-Za-z0-9]+$"`:匹配由字母和数字组成的字符串,常用于用户名或密码验证。
14. `"^\w+$"`:与13相似,但包括下划线 `_`,通常用于匹配单词字符。
15. `"^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$"`:验证电子邮件地址的正则表达式。
16. `"^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$"`:用于URL的正则,允许协议、域名、路径和查询参数。
17. 日期格式正则表达式:`"^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$"` 和 `"^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$"`,用于验证日期格式,如MM/dd/yyyy或dd-MM-yyyy。
18. `"^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$"`:另一种电子邮件地址的验证正则。
19. `"^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5])$"`:用于验证IPv4地址的正则。
20. `"^(d{1,2}|1dd|2[0-4]d|25[0-5])\.?(d{1,2}|1dd|2[0-4]d|25[0-5])\.?(d{1,2}|1dd|2[0-4]d|25[0-5])\.?(d{1,2}|1dd|2[0-4]d|25[0-5])$"`: 类似于19,但允许点号之间的空格,用于更宽松的IP地址验证。
这些正则表达式在不同的场景下都有其独特的应用,例如输入验证、数据清洗和过滤。掌握它们能极大地提高处理字符串数据的效率和准确性。
2018-07-30 上传
2023-08-31 上传
2009-11-11 上传
2010-10-15 上传
2010-02-20 上传
2010-01-12 上传
2021-09-24 上传
chen792617
- 粉丝: 0
- 资源: 5
最新资源
- 高清艺术文字图标资源,PNG和ICO格式免费下载
- mui框架HTML5应用界面组件使用示例教程
- Vue.js开发利器:chrome-vue-devtools插件解析
- 掌握ElectronBrowserJS:打造跨平台电子应用
- 前端导师教程:构建与部署社交证明页面
- Java多线程与线程安全在断点续传中的实现
- 免Root一键卸载安卓预装应用教程
- 易语言实现高级表格滚动条完美控制技巧
- 超声波测距尺的源码实现
- 数据可视化与交互:构建易用的数据界面
- 实现Discourse外聘回复自动标记的简易插件
- 链表的头插法与尾插法实现及长度计算
- Playwright与Typescript及Mocha集成:自动化UI测试实践指南
- 128x128像素线性工具图标下载集合
- 易语言安装包程序增强版:智能导入与重复库过滤
- 利用AJAX与Spotify API在Google地图中探索世界音乐排行榜