正则表达式是一种强大的文本处理工具,用于模式匹配、搜索和替换字符串中的特定字符或模式。在编程和脚本语言中广泛使用,如JavaScript、Python、Perl等,它能够简化复杂的字符串操作,提高代码的效率和可读性。 ### 基础正则表达式规则 1. **匹配26个英文字母和数字的组合**: - `^[0-9a-zA-Z_]{1,}$`:这个表达式匹配任何由一个或多个数字(0-9)、大写英文字母(A-Z)、小写英文字母(a-z)以及下划线(_)组成的字符串。 2. **匹配一个或多个数字**: - `^\d+$`:这个表达式用于匹配任何由一个或多个数字(0-9)组成的字符串。 3. **匹配非零数字**: - `^[0-9]*[1-9][0-9]*$`:此表达式匹配任何以非零数字开头的数字序列,允许前导零。 4. **匹配带符号的整数或零**: - `^((-\d+)|(0+))$`:这个表达式匹配任何负整数、正整数或零。 5. **匹配负整数**: - `^-[0-9]*[1-9][0-9]*$`:与第3条相似,但特指负数。 6. **匹配整数,包括正负数和零**: - `^-?\d+$`:这个表达式可以匹配任何整数,包括正数、负数和零。 7. **匹配浮点数,包括整数和小数**: - `^\d+(\.\d+)?$`:匹配任何浮点数,包括没有小数部分的整数。 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+)?)|(0+(\.0+)?))$`:类似于第7条,但包括负数和带有小数点的零。 10. **匹配负浮点数**: - `^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$`:仅匹配负浮点数。 11. **匹配任意整数或浮点数**: - `^(-?\d+)(\.\d+)?$`:可以匹配任何正数、负数或零,以及带有小数部分的数。 12. **匹配26个英文字母**: - `^[A-Za-z]+$`:只匹配由大小写字母组成的字符串。 13. **匹配26个大写字母**: - `^[A-Z]+$`:只匹配由大写字母组成的字符串。 14. **匹配26个小写字母**: - `^[a-z]+$`:只匹配由小写字母组成的字符串。 15. **匹配字母和数字的组合**: - `^[A-Za-z0-9]+$`:与第1条类似,但不包括下划线。 16. **匹配单词字符(字母、数字或下划线)**: - `^\w+$`:匹配任何由字母、数字或下划线组成的字符串。 17. **匹配email地址**: - `^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$`:用于验证电子邮件地址的格式。 18. **匹配URL**: - `^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$`:验证URL的基本格式,包括协议、域名和路径。 19. **匹配日期格式(年-月-日)**: - `/^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/`:验证日期格式是否正确,包括年、月、日的范围。 20. **匹配日期格式(月/日/年)**: - `/^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/`:与第19条类似,但格式不同。 21. **匹配电子邮件地址(另一种格式)**: - `^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$`:另一种验证电子邮件地址的方法。 22. **匹配电话号码**: - `(d+-)?(d{4}-?d{7}|d{3}-?d{8}|^d{7,8})(-d+)?`:验证电话号码的格式,考虑到地区差异和可能的区号。 23. **匹配IP地址**: - `^(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地址的有效性。 24. **匹配中文字符**: - `[\u4e00-\u9fa5]`:用于识别中文字符。 25. **匹配双字节字符**: - `[^\x00-\xff]`:用于检测非ASCII字符,即双字节或宽字符。 26. **匹配换行符**: - `\n[\s|]*\r`:用于识别文本中的换行符,包括空白符。 27. **匹配HTML标签**: - `<(.*)>.*<\/\1>|<(.*)\/>`:用于提取或验证HTML文档中的标签。 28. **匹配空白符**: - `(^\s*)|(\s*$)`:用于识别字符串开始或结束处的空白字符。 29. **匹配Email地址(另一种格式)**: - `\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*`:另一种验证电子邮件地址的正则表达式。 30. **匹配URL(另一种格式)**: - `^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$`:另一种URL验证方式。 31. **匹配用户名(首字母为英文,长度5-16字符)**: - `^[a-zA-Z][a-zA-Z0-9_]{4,15}$`:用于验证用户名的格式。 32. **匹配电话号码(另一种格式)**: - `(\d{3}-|\d{4}-)?(\d{8}|\d{7})?`:另一种电话号码的验证方式。 33. **匹配QQ号码**: - `^[1-9]*[1-9][0-9]*$`:用于验证QQ号码的有效性。 34. **匹配任意数量的数字**: - `^[0-9]*$`:匹配任何包含数字的字符串,包括空字符串。 35. **匹配指定长度n的数字**: - `^\d{n}$`:确保字符串完全由n个数字组成。 36. **匹配至少n个数字**: - `^\d{n,}$`:字符串必须至少包含n个数字,但可以更多。 37. **匹配m到n个数字**: - `^\d{m,n}$`:字符串必须包含m到n个数字。 38. **匹配非负整数**: - `^(0|[1-9][0-9]*)$`:匹配任何非负整数。 39. **匹配固定小数位数的实数**: - `^[0-9]+(.[0-9]{2})?$`:用于匹配最多两位小数的实数。 40. **匹配1到3位小数的实数**: - `^[0-9]+(.[0-9]{1,3})?$`:与上一条类似,但小数位数更灵活。 41. **匹配任意正整数**: - `^\+?[1-9][0-9]*$`:匹配任何正整数,包括前面有加号的情况。 42. **匹配任意负整数**: - `^\-[1-9][0-9]*$`:仅匹配负整数。 43. **匹配任何三个字符**: - `^.{3}$`:确保字符串正好有三个字符。 44. **匹配26个英文字母**: - `^[A-Za-z]+$`:与之前的规则重复,用于验证字母字符串。 45. **匹配26个大写字母**: - `^[A-Z]+$`:与之前的规则重复,用于验证大写字母字符串。 46. **匹配26个小写字母**: - `^[a-z]+$`:与之前的规则重复,用于验证小写字母字符串。 47. **匹配字母和数字组合**: - `^[A-Za-z0-9]+$`:与之前的规则重复,用于验证字母数字字符串。 48. **匹配单词字符**: - `^\w+$`:与之前的规则重复,用于验证单词字符组成的字符串。 49. **验证用户名(字母开头,5-17字符)**: - `^[a-zA-Z]\w{5,17}$`:确保用户名符合特定的格式。 50. **排除特殊字符**: - `[^%&',;=?$\x22]+`:用于验证字符串中不包含某些特殊字符。 51. **匹配任意数量的中文字符**: - `^[\u4e00-\u9fa5]{0,}$`:用于识别中文字符串。 52. **匹配特定格式的字符串**: - `^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9f`:这个表达式的后半部分似乎被截断了,完整形式应该是用于验证字符串不以特定字符开头或结尾。 通过这些基础和高级的正则表达式规则,开发者可以高效地进行字符串的验证、搜索和替换操作,大大提高了数据处理的准确性和速度。在实际应用中,选择合适的正则表达式对于解决特定问题至关重要。
1.由数字、26个英文字母或者下划线组成的字符串:
^[0-9a-zA-Z_]{1,}$
2.非负整数(正整数 + 0 ):
^\d+$
3.正整数:
^[0-9]*[1-9][0-9]*$
4.非正整数(负整数 + 0):
^((-\d+)|(0+))$
5.负整数 :
^-[0-9]*[1-9][0-9]*$
6.整数:
^-?\d+$
7.非负浮点数(正浮点数 + 0):
^\d+(\.\d+)?$
8.正浮点数 :
^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$
9.非正浮点数(负浮点数 + 0):
^((-\d+(\.\d+)?)|(0+(\.0+)?))$
10.负浮点数 :
^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$
11.浮点数 :
^(-?\d+)(\.\d+)?$
12.由26个英文字母组成的字符串 :
^[A-Za-z]+$
13.由26个英文字母的大写组成的字符串 :
^[A-Z]+$
14.由26个英文字母的小写组成的字符串 :
^[a-z]+$
15.由数字和26个英文字母组成的字符串 :
16.由数字、26个英文字母或者下划线组成的字符串 :
^\w+$
17.email地址 :
^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$
18.url:
^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$
19. 年-月-日:
/^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/
20.月/日/年:
/^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/
21.Emil:
^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$
22.电话号码:
(d+-)?(d{4}-?d{7}|d{3}-?d{8}|^d{7,8})(-d+)?
23.IP地址:
^(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])$
24.匹配中文字符的正则表达式:
[\u4e00-\u9fa5]
25.匹配双字节字符(包括汉字在内):
[^\x00-\xff]
26.匹配空行的正则表达式:
\n[\s| ]*\r
27.匹配HTML标记的正则表达式:
/<(.*)>.*<\/\1>|<(.*) \/>/
28.匹配首尾空格的正则表达式:
(^\s*)|(\s*$)
29.匹配Email地址的正则表达式:
\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
30.匹配网址URL的正则表达式:
剩余8页未读,继续阅读
- 粉丝: 1
- 资源: 13
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助