You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@spark.apache.org by "drexler-sky (via GitHub)" <gi...@apache.org> on 2025/01/03 04:00:49 UTC
[PR] [SPARK-50703][PYTHON] Refine the docstring of regexp_replace, regexp_substr, and regexp_instr [spark]
drexler-sky opened a new pull request, #49348:
URL: https://github.com/apache/spark/pull/49348
<!--
Thanks for sending a pull request! Here are some tips for you:
1. If this is your first time, please read our contributor guidelines: https://spark.apache.org/contributing.html
2. Ensure you have added or run the appropriate tests for your PR: https://spark.apache.org/developer-tools.html
3. If the PR is unfinished, add '[WIP]' in your PR title, e.g., '[WIP][SPARK-XXXX] Your PR title ...'.
4. Be sure to keep the PR description updated to reflect all changes.
5. Please write your PR title to summarize what this PR proposes.
6. If possible, provide a concise example to reproduce the issue for a faster review.
7. If you want to add a new configuration, please read the guideline first for naming configurations in
'core/src/main/scala/org/apache/spark/internal/config/ConfigEntry.scala'.
8. If you want to add or modify an error type or message, please read the guideline first in
'common/utils/src/main/resources/error/README.md'.
-->
### What changes were proposed in this pull request?
Refined docstring for `regexp_replace`, `regexp_substr`, and `regexp_instr`.
### Why are the changes needed?
to improve docs and test coverage
### Does this PR introduce _any_ user-facing change?
doc-only changes
### How was this patch tested?
doctests
### Was this patch authored or co-authored using generative AI tooling?
No
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org
Re: [PR] [SPARK-50703][PYTHON] Refine the docstring of regexp_replace, regexp_substr, and regexp_instr [spark]
Posted by "zhengruifeng (via GitHub)" <gi...@apache.org>.
zhengruifeng closed pull request #49348: [SPARK-50703][PYTHON] Refine the docstring of regexp_replace, regexp_substr, and regexp_instr
URL: https://github.com/apache/spark/pull/49348
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org
Re: [PR] [SPARK-50703][PYTHON] Refine the docstring of regexp_replace, regexp_substr, and regexp_instr [spark]
Posted by "HyukjinKwon (via GitHub)" <gi...@apache.org>.
HyukjinKwon commented on code in PR #49348:
URL: https://github.com/apache/spark/pull/49348#discussion_r1901551767
##########
python/pyspark/sql/functions/builtin.py:
##########
@@ -15535,11 +15535,21 @@ def regexp_replace(
Examples
--------
+ >>> from pyspark.sql import functions as sf
>>> df = spark.createDataFrame([("100-200", r"(\d+)", "--")], ["str", "pattern", "replacement"])
- >>> df.select(regexp_replace('str', r'(\d+)', '--').alias('d')).collect()
- [Row(d='-----')]
- >>> df.select(regexp_replace("str", col("pattern"), col("replacement")).alias('d')).collect()
- [Row(d='-----')]
+ >>> df.select('*', sf.regexp_replace('str', r'(\d+)', '--')).show()
Review Comment:
can we write some explanation for individual examples?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org
Re: [PR] [SPARK-50703][PYTHON] Refine the docstring of regexp_replace, regexp_substr, and regexp_instr [spark]
Posted by "HyukjinKwon (via GitHub)" <gi...@apache.org>.
HyukjinKwon commented on code in PR #49348:
URL: https://github.com/apache/spark/pull/49348#discussion_r1902770447
##########
python/pyspark/sql/functions/builtin.py:
##########
@@ -15580,36 +15639,70 @@ def regexp_substr(str: "ColumnOrName", regexp: "ColumnOrName") -> Column:
def regexp_instr(
str: "ColumnOrName", regexp: "ColumnOrName", idx: Optional[Union[int, Column]] = None
) -> Column:
- r"""Extract all strings in the `str` that match the Java regex `regexp`
+ r"""Returns the position of the first substring in the `str` that match the Java regex `regexp`
and corresponding to the regex group index.
.. versionadded:: 3.5.0
Parameters
----------
- str : :class:`~pyspark.sql.Column` or str
+ str : :class:`~pyspark.sql.Column` or column name
target column to work on.
- regexp : :class:`~pyspark.sql.Column` or str
+ regexp : :class:`~pyspark.sql.Column` or column name
regex pattern to apply.
- idx : int, optional
+ idx : :class:`~pyspark.sql.Column` or int, optional
Review Comment:
It is used via `RegExpExtractBase` :-)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org
Re: [PR] [SPARK-50703][PYTHON] Refine the docstring of regexp_replace, regexp_substr, and regexp_instr [spark]
Posted by "HyukjinKwon (via GitHub)" <gi...@apache.org>.
HyukjinKwon commented on PR #49348:
URL: https://github.com/apache/spark/pull/49348#issuecomment-2570203473
cc @zhengruifeng
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org
Re: [PR] [SPARK-50703][PYTHON] Refine the docstring of regexp_replace, regexp_substr, and regexp_instr [spark]
Posted by "zhengruifeng (via GitHub)" <gi...@apache.org>.
zhengruifeng commented on PR #49348:
URL: https://github.com/apache/spark/pull/49348#issuecomment-2572065331
thanks, merged to master
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org
Re: [PR] [SPARK-50703][PYTHON] Refine the docstring of regexp_replace, regexp_substr, and regexp_instr [spark]
Posted by "drexler-sky (via GitHub)" <gi...@apache.org>.
drexler-sky commented on PR #49348:
URL: https://github.com/apache/spark/pull/49348#issuecomment-2572199031
Thanks @HyukjinKwon @zhengruifeng
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org
Re: [PR] [SPARK-50703][PYTHON] Refine the docstring of regexp_replace, regexp_substr, and regexp_instr [spark]
Posted by "drexler-sky (via GitHub)" <gi...@apache.org>.
drexler-sky commented on code in PR #49348:
URL: https://github.com/apache/spark/pull/49348#discussion_r1902511923
##########
python/pyspark/sql/functions/builtin.py:
##########
@@ -15580,36 +15639,70 @@ def regexp_substr(str: "ColumnOrName", regexp: "ColumnOrName") -> Column:
def regexp_instr(
str: "ColumnOrName", regexp: "ColumnOrName", idx: Optional[Union[int, Column]] = None
) -> Column:
- r"""Extract all strings in the `str` that match the Java regex `regexp`
+ r"""Returns the position of the first substring in the `str` that match the Java regex `regexp`
and corresponding to the regex group index.
.. versionadded:: 3.5.0
Parameters
----------
- str : :class:`~pyspark.sql.Column` or str
+ str : :class:`~pyspark.sql.Column` or column name
target column to work on.
- regexp : :class:`~pyspark.sql.Column` or str
+ regexp : :class:`~pyspark.sql.Column` or column name
regex pattern to apply.
- idx : int, optional
+ idx : :class:`~pyspark.sql.Column` or int, optional
Review Comment:
`idx` doesn't seem to be used in the Scala code https://github.com/apache/spark/blob/master/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/regexpExpressions.scala#L1153. Should we remove this parameter for now?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org