PHP在Java中的`preg_match_all`功能

问题描述

对于Matcher,要获取组,您必须使用Matcher.group()方法

例如 :

Pattern p = Pattern.compile("\\[\"(\\w+)\",\"(\\w+)\",\"(\\w+)\"\\]");
Matcher m = p.matcher("[\"one\",\"two\",\"three\"]");
boolean b = m.matches();
System.out.println(m.group(1)); //prints one

记住group(0)是相同的整个匹配序列。

关于ideone的例子


解决方法

在PHP中,如果我们需要匹配类似的东西["one","two","three"],则可以将以下正则表达式与一起使用preg_match

$pattern = "/\[\"(\w+)\",\"(\w+)\",\"(\w+)\"\]/"

通过使用括号,我们还可以提取单词一,二和三。我知道MatcherJava
中的对象,但是无法获得类似的功能;我只能提取整个字符串。我将如何模仿preg_matchJava中的行为。

猜你在找的技术问答相关文章

如何检查配对的蓝牙设备是打印机还是扫描仪(Android)
是否允许实体正文进行HTTP DELETE请求?
如何将ZipInputStream转换为InputStream?
java.util.logging Java 8中的变量
PowerMockito.doReturn返回null
Java中的RESTful调用
Swing / Java:如何正确使用getText和setText字符串
特殊字符和重音字符
Android Studio中的ndk.dir错误
错误“找不到主类”