【发布时间】:2015-07-30 13:09:49
【问题描述】:
我需要将一些 perl 正则表达式转换为 Java 正则表达式。我是 Java 新手,对 Java 正则表达式了解不多。
我要转换的正则表达式与此非常相似
Text =~ /(^FOO[0-9]{4})|(^BAR[0-9]{3})/
查看字符串是否匹配 FOO4823 BAR943(FOO 和 4 个数字或 BAR 和 3 个数字)。我将如何用 Java 重写它?有什么简单的规则可以转换吗?
【问题讨论】:
-
从这里开始:docs.oracle.com/javase/tutorial/essential/regex?当您遇到 Java 代码问题时再回来。
-
你试过什么?您是否对名为 google 的现代网站进行过任何研究?和 Oracle 文档? docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html
-
我不懂 PHP。
=~是否抓住了正则表达式匹配的部分?如果匹配不止一场会怎样? -
@markspace 这是 perl。它只与模式匹配并返回真或假。这就是我需要知道的。模式是否匹配。
-
Perl 和 Java 之间存在构造差异,但对于您的正则表达式,构造是相同的。您是否尝试在无需学习标准 Regex 函数调用的情况下执行 Java regex?这不是一个好的开始。