1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | package Torello.HTML.NodeSearch; import java.util.*; import java.util.regex.Pattern; import java.util.function.Predicate; import Torello.HTML.*; import Torello.HTML.NodeSearch.SearchLoops.TagNodesInclusive.TNFindIncl; import Torello.Java.LV; /** * Searches for {@code Vector}-indices of {@link TagNode} matches using exactly the same criteria * offered by class {@link TagNodeFind}, but also retrieves the corresponding Closing-Tag indices * from the {@code Vector}, and returns both as an instance of {@link DotPair} (a sublist-pointer). * * <BR /><BR /><EMBED CLASS='external-html' DATA-FILE-ID=TagNodeFindInclusive> */ @Torello.JavaDoc.JDHeaderBackgroundImg @Torello.JavaDoc.StaticFunctional public class TagNodeFindInclusive { private TagNodeFindInclusive() { } public static DotPair first (Vector<? extends HTMLNode> html, String... htmlTags) { return TNFindIncl.nth (html, 1, new LV(html, 0, -1), ARGCHECK.htmlTags(htmlTags)); } public static DotPair last (Vector<? extends HTMLNode> html, String... htmlTags) { return TNFindIncl.nthFromEnd (html, 1, new LV(html, 0, -1), ARGCHECK.htmlTags(htmlTags)); } public static Vector<DotPair> all (Vector<? extends HTMLNode> html, String... htmlTags) { return TNFindIncl.all (html, new LV(html, 0, -1), ARGCHECK.htmlTags(htmlTags)); } public static Vector<DotPair> allExcept (Vector<? extends HTMLNode> html, String... htmlTags) { return TNFindIncl.allExcept (html, new LV(html, 0, -1), ARGCHECK.htmlTags(htmlTags)); } public static DotPair first (Vector<? extends HTMLNode> html, int sPos, int ePos, String... htmlTags) { return TNFindIncl.nth (html, 1, new LV(html, sPos, ePos), ARGCHECK.htmlTags(htmlTags)); } public static DotPair last (Vector<? extends HTMLNode> html, int sPos, int ePos, String... htmlTags) { return TNFindIncl.nthFromEnd (html, 1, new LV(html, sPos, ePos), ARGCHECK.htmlTags(htmlTags)); } public static Vector<DotPair> all (Vector<? extends HTMLNode> html, int sPos, int ePos, String... htmlTags) { return TNFindIncl.all (html, new LV(html, sPos, ePos), ARGCHECK.htmlTags(htmlTags)); } public static Vector<DotPair> allExcept (Vector<? extends HTMLNode> html, int sPos, int ePos, String... htmlTags) { return TNFindIncl.allExcept (html, new LV(html, sPos, ePos), ARGCHECK.htmlTags(htmlTags)); } public static DotPair nth (Vector<? extends HTMLNode> html, int nth, String... htmlTags) { return TNFindIncl.nth (html, ARGCHECK.n(nth, html), new LV(html, 0, -1), ARGCHECK.htmlTags(htmlTags)); } public static DotPair nthFromEnd (Vector<? extends HTMLNode> html, int nth, String... htmlTags) { return TNFindIncl.nthFromEnd (html, ARGCHECK.n(nth, html), new LV(html, 0, -1), ARGCHECK.htmlTags(htmlTags)); } public static DotPair nth (Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String... htmlTags) { return TNFindIncl.nth (html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), ARGCHECK.htmlTags(htmlTags)); } public static DotPair nthFromEnd (Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String... htmlTags) { return TNFindIncl.nthFromEnd (html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), ARGCHECK.htmlTags(htmlTags)); } } |