polars.Expr.str.json_path_match#
- Expr.str.json_path_match(json_path: str) Expr [source]#
Extract the first match of JSON string with the provided JSONPath expression.
Throws errors if invalid JSON strings are encountered. All return values will be cast to
Utf8
regardless of the original value.Documentation on JSONPath standard can be found here.
- Parameters:
- json_path
A valid JSON path query string.
- Returns:
- Expr
Expression of data type
Utf8
. Contains null values if original value is null or the json_path returns nothing.
Examples
>>> df = pl.DataFrame( ... {"json_val": ['{"a":"1"}', None, '{"a":2}', '{"a":2.1}', '{"a":true}']} ... ) >>> df.with_columns(matched=pl.col("json_val").str.json_path_match("$.a")) shape: (5, 2) ┌────────────┬─────────┐ │ json_val ┆ matched │ │ --- ┆ --- │ │ str ┆ str │ ╞════════════╪═════════╡ │ {"a":"1"} ┆ 1 │ │ null ┆ null │ │ {"a":2} ┆ 2 │ │ {"a":2.1} ┆ 2.1 │ │ {"a":true} ┆ true │ └────────────┴─────────┘