Class TextNodeRemove


  • public class TextNodeRemove
    extends java.lang.Object
    TextNodeRemove 🠞
    1. TextNode: This implies that TagNode elements are ignored completely in this search, and instead, the "text" (a.k.a. 'page-content'), represented as instances of TextNode, are searched.

    2. Remove: This implies that node matches are removed from the underlying input-Vector. This method will return a total count of the number of nodes removed.
    Removes TextNode instances from Vectorized-HTML that match a search-criteria specified by a String-Predicate, Regular Expression or TextComparitor.

    Methods Available

    Method Explanation
    first (...) This will remove the first matching TextNode found, out of the vectorized-page parameter 'html'.
    nth (...) This will remove the nth matching TextNode found, out of the vectorized-page parameter 'html'.
    last (...) This will remove the last matching TextNode found, out of the vectorized-page parameter 'html'.
    nthFromEnd (...) This will remove the nth-from-last matching TextNode found, out of the vectorized-page parameter 'html'.
    all (...) This will remove every TextNode that matches the specified search-criteria found inside the vectorized-page parameter 'html'
    allExcept (...) This will remove every TextNode found in the vectorized-page parameter 'html' that does not match the specified search-criteria.

    Method Parameters

    Parameter Explanation
    Vector<? HTMLNode> html This represents any vectorized HTML page, sub-page, or list of partial-elements.
    int nth This represents the 'nth' match of a comparison for-loop. When the method-signature used includes the parameter 'nth' , the first n-1 matches that are found - will be skipped, and the 'nth' match is, instead, returned.

    EXCEPTIONS: An NException shall throw if the value of parameter 'nth' is zero, negative, or larger than the size of the input html-Vector.
    int sPos, int ePos When these parameters are present, only HTMLNode's that are found between the specified Vector indices will be considered for matching with the search criteria.

    NOTE: In every situation where the parameters int sPos, int ePos are used, parameter 'ePos' will accept a negative value, but parameter 'sPos' will not. When 'ePos' is passed a negative-value, the internal LV ('Loop Variable Counter') will have its public final int end field set to the length of the vectorized-html page that was passed. (html.size() of parameter Vector<HTMLNode> html).

    EXCEPTIONS: An IndexOutOfBoundsException will be thrown if:

    • If sPos is negative, or if sPos is greater-than or equal-to the size of the input Vector
    • If ePos is zero, or greater than the size of the input Vector.
    • If sPos is a larger integer than ePos
    TextComparitor tc WORKS WITH: This parameter utilizes / works-with parameter String... compareStr to perform the requested comparisons. The comparisons are computed using the TextNode.str String-field of a TextNode.

    When this parameter is present in the method-signature parameter-list, the decision of whether a TextNode is to be included in the search result-set is defined by this parameter's FunctionalInterface Predicate 'test' method. TextComparitor is a Java BiPredicate<String, String[]> which compares its first String-parameter against the String's in its second.
    Pattern p This parameter references Java's "Regular Expression" processing engine. If the method-signature includes the java.util.regex.Pattern parameter, the search-loops will use the standard Regular-Expression pattern matching routine: p.asPredicate().test(text_node.str) when deciding which TextNode's "match" this search-criteria.
    Predicate<String> p When this parameter is present in the method-signature parameter-list, the decision of whether a TextNode is to be included in the search result-set are made by the results of the Java Predicate.test(String) method.

    Specifically: p.test(text_node.str)
    String... compareStr WORKS WITH: This parameter works in coordination with TextComparitor tc. This parameter supplies the strings with which the comparisons of the TextNode.str field may be compared.

    Return Values:

    1. int reveals exactly how many TextNode's were successfully removed from the html vectorized-page parameter 'html'



    Stateless Class:
    This class neither contains any program-state, nor can it be instantiated. The @StaticFunctional Annotation may also be called 'The Spaghetti Report'. Static-Functional classes are, essentially, C-Styled Files, without any constructors or non-static member fields. It is a concept very similar to the Java-Bean's @Stateless Annotation.

    • 1 Constructor(s), 1 declared private, zero-argument constructor
    • 36 Method(s), 36 declared static
    • 0 Field(s)


    • Method Summary

       
      All Matches
      Modifier and Type Method
      static int all​(Vector<? extends HTMLNode> html, Predicate<String> p)
      static int all​(Vector<? extends HTMLNode> html, Pattern p)
      static int all​(Vector<? extends HTMLNode> html, TextComparitor tc, String... compareStr)
       
      All Matches, Range Limited
      Modifier and Type Method
      static int all​(Vector<? extends HTMLNode> html, int sPos, int ePos, Predicate<String> p)
      static int all​(Vector<? extends HTMLNode> html, int sPos, int ePos, Pattern p)
      static int all​(Vector<? extends HTMLNode> html, int sPos, int ePos, TextComparitor tc, String... compareStr)
       
      All Non-Matches
      Modifier and Type Method
      static int allExcept​(Vector<? extends HTMLNode> html, Predicate<String> p)
      static int allExcept​(Vector<? extends HTMLNode> html, Pattern p)
      static int allExcept​(Vector<? extends HTMLNode> html, TextComparitor tc, String... compareStr)
       
      All Non-Matches, Range Limited
      Modifier and Type Method
      static int allExcept​(Vector<? extends HTMLNode> html, int sPos, int ePos, Predicate<String> p)
      static int allExcept​(Vector<? extends HTMLNode> html, int sPos, int ePos, Pattern p)
      static int allExcept​(Vector<? extends HTMLNode> html, int sPos, int ePos, TextComparitor tc, String... compareStr)
       
      First Match
      Modifier and Type Method
      static int first​(Vector<? extends HTMLNode> html, Predicate<String> p)
      static int first​(Vector<? extends HTMLNode> html, Pattern p)
      static int first​(Vector<? extends HTMLNode> html, TextComparitor tc, String... compareStr)
       
      First Match, Range Limited
      Modifier and Type Method
      static int first​(Vector<? extends HTMLNode> html, int sPos, int ePos, Predicate<String> p)
      static int first​(Vector<? extends HTMLNode> html, int sPos, int ePos, Pattern p)
      static int first​(Vector<? extends HTMLNode> html, int sPos, int ePos, TextComparitor tc, String... compareStr)
       
      Last Match
      Modifier and Type Method
      static int last​(Vector<? extends HTMLNode> html, Predicate<String> p)
      static int last​(Vector<? extends HTMLNode> html, Pattern p)
      static int last​(Vector<? extends HTMLNode> html, TextComparitor tc, String... compareStr)
       
      Last Match, Range Limited
      Modifier and Type Method
      static int last​(Vector<? extends HTMLNode> html, int sPos, int ePos, Predicate<String> p)
      static int last​(Vector<? extends HTMLNode> html, int sPos, int ePos, Pattern p)
      static int last​(Vector<? extends HTMLNode> html, int sPos, int ePos, TextComparitor tc, String... compareStr)
       
      Nth Match
      Modifier and Type Method
      static int nth​(Vector<? extends HTMLNode> html, int nth, Predicate<String> p)
      static int nth​(Vector<? extends HTMLNode> html, int nth, Pattern p)
      static int nth​(Vector<? extends HTMLNode> html, int nth, TextComparitor tc, String... compareStr)
       
      Nth Match, Range Limited
      Modifier and Type Method
      static int nth​(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, Predicate<String> p)
      static int nth​(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, Pattern p)
      static int nth​(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, TextComparitor tc, String... compareStr)
       
      Nth Match From End
      Modifier and Type Method
      static int nthFromEnd​(Vector<? extends HTMLNode> html, int nth, Predicate<String> p)
      static int nthFromEnd​(Vector<? extends HTMLNode> html, int nth, Pattern p)
      static int nthFromEnd​(Vector<? extends HTMLNode> html, int nth, TextComparitor tc, String... compareStr)
       
      Nth Match From End, Range Limited
      Modifier and Type Method
      static int nthFromEnd​(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, Predicate<String> p)
      static int nthFromEnd​(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, Pattern p)
      static int nthFromEnd​(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, TextComparitor tc, String... compareStr)
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait