public static FindAll findAll(String regex) {
    return findAll(Pattern.compile(regex));
  }
@Test
  @Category(NeedsRunner.class)
  public void testFindAllGroups() {
    PCollection<List<String>> output =
        p.apply(Create.of("aj", "xjx", "yjy", "zjz")).apply(Regex.findAll("([xyz])j([xyz])"));

    PAssert.that(output)
        .containsInAnyOrder(
            Arrays.asList("xjx", "x", "x"),
            Arrays.asList("yjy", "y", "y"),
            Arrays.asList("zjz", "z", "z"));
    p.run();
  }