Java正则表达式:如何表达可以是任何东西的字符串?

时间:2016-07-17 01:03:22

标签: java regex

我一直在使用在线正则表达式测试程序来开发Java正则表达式。

我想要的是一个正则表达式,它将匹配字符串末尾的强大特定模式的特定模式,以及该字符串之间的任何内容。

例如,它的文件名是这样的结构

^StartOfAFileName_middleOfAFileName_EndOfAFileName.java$

"_middleOfAFileName_"字面上可以是任何东西。

我在正则表达式测试器中尝试过与此类似的东西,但它失败了:

^StartOfAFileName_**\***_EndOfAFileName.java$

知道Java正则表达式相当于"*"或任何字符串/任何模式是什么?

2 个答案:

答案 0 :(得分:5)

.*.是“任何字符,*是任意数字。

https://docs.oracle.com/javase/tutorial/essential/regex/pre_char_classes.html

答案 1 :(得分:0)

这是代码/上下文:

String str = "StartOfAFileName_middleOfAFileName_EndOfAFileName.java";
String pattern = "^StartOfAFileName.*EndOfAFileName.java$";
System.out.println(str.matches(pattern) ? "\nMATCHES" : "\nDOESN'T MATCH");