You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@spark.apache.org by phegstrom <gi...@git.apache.org> on 2018/08/27 18:00:36 UTC

[GitHub] spark pull request #22227: [SPARK-25202] [SQL] Implements split with limit s...

Github user phegstrom commented on a diff in the pull request:

    https://github.com/apache/spark/pull/22227#discussion_r213061265
  
    --- Diff: sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/regexpExpressions.scala ---
    @@ -232,30 +232,41 @@ case class RLike(left: Expression, right: Expression) extends StringRegexExpress
      * Splits str around pat (pattern is a regular expression).
      */
     @ExpressionDescription(
    -  usage = "_FUNC_(str, regex) - Splits `str` around occurrences that match `regex`.",
    +  usage = "_FUNC_(str, regex, limit) - Splits `str` around occurrences that match `regex`." +
    +    "The `limit` parameter controls the number of times the pattern is applied and " +
    +    "therefore affects the length of the resulting array. If the limit n is " +
    +    "greater than zero then the pattern will be applied at most n - 1 times, " +
    +    "the array's length will be no greater than n, and the array's last entry " +
    +    "will contain all input beyond the last matched delimiter. If n is " +
    +    "non-positive then the pattern will be applied as many times as " +
    +    "possible and the array can have any length. If n is zero then the " +
    +    "pattern will be applied as many times as possible, the array can " +
    +    "have any length, and trailing empty strings will be discarded.",
       examples = """
         Examples:
    -      > SELECT _FUNC_('oneAtwoBthreeC', '[ABC]');
    +      > SELECT _FUNC_('oneAtwoBthreeC', '[ABC]', -1);
            ["one","two","three",""]
    +|      > SELECT _FUNC_('oneAtwoBthreeC', '[ABC]', 2);
    + |       ["one","twoBthreeC"]
       """)
    -case class StringSplit(str: Expression, pattern: Expression)
    -  extends BinaryExpression with ImplicitCastInputTypes {
    +case class StringSplit(str: Expression, pattern: Expression, limit: Expression)
    --- End diff --
    
    @maropu which tests use `string-functions.sql`? would like to add tests here but not sure how to explicitly kick off the test as there are no `*Suites` which use this file it seems.


---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org