Advertisement
Guest User

Untitled

a guest
Apr 9th, 2020
172
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.42 KB | None | 0 0
  1. public class Main {
  2.  
  3.     public static void main(String[] args) throws Exception {
  4.  
  5.         String xml =
  6.                 "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +
  7.                         "<folder name=\"c\">\n" +
  8.                         "    <folder name=\"program files\">\n" +
  9.                         "        <folder name=\"uninstall information\"> \n" +
  10.                         "                <folder name=\"temporal\" />\n" +
  11.                         "                <folder name=\"foo\" />\n" +
  12.                         "                <folder name=\"uninstall information\"> \n" +
  13.                         "                    <folder name=\"temporal\" />\n" +
  14.                         "                    <folder name=\"foo\" />\n" +
  15.                         "                    <folder name=\"uninstall information\"> \n" +
  16.                         "                        <folder name=\"temporal\" />\n" +
  17.                         "                        <folder name=\"foo\" />\n" +
  18.                         "                        <folder name=\"uninstall information\"> \n" +
  19.                         "                             <folder name=\"temporal\" />\n" +
  20.                         "                             <folder name=\"foo\" />\n" +
  21.                         "                        </folder>\n" +
  22.                         "                    </folder>\n" +
  23.                         "                </folder>\n" +
  24.                         "        </folder>\n" +
  25.                         "    </folder>\n" +
  26.                         "    <folder name=\"fusers\" />\n" +
  27.                         "</folder>";
  28.  
  29.         Collection<String> filter = folderNames(xml, 'f');
  30.         filter.forEach(System.out::println);
  31.  
  32.  
  33.     }
  34.  
  35.     public static Collection<String> folderNames(String xml, char startingLetter) throws Exception {
  36.         String fstPattern = "<folder name=\"";
  37.         List<String> results = new ArrayList<>();
  38.  
  39.         String[] patterns = xml.split(">");
  40.         for (String p : patterns) {
  41.             int indexof = p.indexOf("=") + 2;
  42.             if (p.contains(fstPattern) && indexof >= 0) {
  43.                 int endIndexOF = p.lastIndexOf("\"");
  44.                 String result = p.substring(indexof, endIndexOF);
  45.                 if(result.charAt(0)==startingLetter){
  46.                     results.add(result);
  47.                 }
  48.             }
  49.         }
  50.         return results;
  51.     }
  52.  
  53.  
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement