Eu queria saber se alguém poderia me ajudar com este regex. Ao usar um teste de regex e tal eu recebo o resultado que quero no entanto, não consigo produzir a mesma coisa em Java
/^(?: {4})+(?=.+)/gm
Respostas:
1 para resposta № 1Usar Pattern.MULTILINE
para o /m
modificador (ou sinalizador). E use o iterador para o /g
. E, claro, remover os delimitadores /
dos dois finais do seu regex. Por favor, veja este exemplo:
String input = "...some input...";
Pattern pattern = Pattern.compile("^(?: {4})+(?=.+)", Pattern.MULTILINE);
Matcher m = pattern.matcher(input);
// Using iterator doing the /g part here
while (m.find()) {
System.out.println(m.group(1));
}
1 para resposta № 2
Remover /gm
formar o regex. Isso é regex javascript não java.
Se você quiser converter javascript regex para java, já temos uma resposta aqui. Vejo Como converter regex javascript para java regex seguro?
0 para resposta № 3
Isso deve servir:
Pattern regex = Pattern.compile("^(?: {4})+(?=.+)", Pattern.MULTILINE);