Perl到Java正则表达式的转换
我需要将一些perl正则表达式转换为Java正则表达式。我是Java新手,对Java正则表达式知之甚少 我要转换的正则表达式与此非常相似Perl到Java正则表达式的转换,java,regex,perl,Java,Regex,Perl,我需要将一些perl正则表达式转换为Java正则表达式。我是Java新手,对Java正则表达式知之甚少 我要转换的正则表达式与此非常相似 Text =~ /(^FOO[0-9]{4})|(^BAR[0-9]{3})/ 查看字符串是否与FOO4823BAR943(FOO和4个数字或BAR和3个数字)匹配。我如何用Java重写这个?有什么简单的规则可以转换它们吗?这将非常相似 Pattern pattern = Pattern.compile("(^FOO[0-9]{4})|(^BAR[0-9]{
Text =~ /(^FOO[0-9]{4})|(^BAR[0-9]{3})/
查看字符串是否与
FOO4823
BAR943
(FOO
和4个数字或BAR
和3个数字)匹配。我如何用Java重写这个?有什么简单的规则可以转换它们吗?这将非常相似
Pattern pattern = Pattern.compile("(^FOO[0-9]{4})|(^BAR[0-9]{3})");
System.out.println(pattern.matcher("FOO4823").find());
System.out.println(pattern.matcher("BAR943").find());
看看测试要用Java重新编写,您需要
String text = ...
Matcher matcher = Pattern.compile("(^FOO[0-9]{4})|(^BAR[0-9]{3})").matcher( text );
if( matcher.find() ) {
// ... it was found
}
关于将Perl转换为Java的指南,这里有一个开始:?当您遇到Java代码问题时,请回来。您尝试过什么?你在一个叫谷歌的现代网站上做过研究吗?和Oracle文档?我不懂PHP。
=~
是否抓取正则表达式匹配的部分?如果存在多个匹配项,会发生什么情况?@markspace这是perl。它只与模式匹配并返回true或false。这就是我需要知道的全部。模式是否匹配。Perl和Java之间存在构造差异,但对于正则表达式,构造是相同的。您是否试图在不必学习标准正则表达式函数调用的情况下执行Java正则表达式?这不是一个好的开始。