几个正则表达式的意思

来源:百度知道 编辑:UC知道 时间:2024/06/08 15:01:48
T.*\\.java
[Zz].*\\.class
这两个正则表达式是什么意思?举个例子
书上分别对应: .\TestEOF.java 和 .\FreezeAlien.class
但我又点不理解,谢谢各位

T.*\\.java 就是以T开头,以.java结尾的字符串,中间可以是任意字符串
[Zz].*\\.class 是以z或者Z开头,以.class结尾的字符串,中间可以是任意字符串

但是第二个匹配到FreezeAlien.class就好像不大对了

你这个应该是java里面的正则
. 表示任意字符
* 表示0或多个
所以.*就表示0或多个任意的字符
\\ 表示\,因为是特殊字符,需要转义,这个是java里面的转义
. 在正则里面是特殊字符,要转义就是\.
所以在java的正则里面\\.就是“.”的意思,文件名的分隔符
[Zz],表示大写或小写的Z

所以T.*\\.java就是含有“T”,后面任意字符,后面“.java”的字符串
[Zz].*\\.class就是含有“Z”或者“z”,后面任意字符,后面“.class”的字符串

如果要加上以Z开头的话最前面要加上“^”,结尾的话最后面要加上“$”
一楼的解释不对,照他的理论.\TestEOF.java也不匹配,是以.\开头的,不是T