适用于:
Databricks Runtime 18.2 及更高版本
Important
此功能在 Beta 版中。 工作区管理员可以从 预览 页控制对此功能的访问。 请参阅 Manage Azure Databricks 预览版。
返回 IPv4 或 IPv6 CIDR 块的规范表示形式。 如果输入无效,则 None 返回而不是引发错误。
有关相应的 SQL 函数,请参阅 try_ip_cidr 函数。
Syntax
from pyspark.databricks.sql import functions as dbf
dbf.try_ip_cidr(col=<col>)
参数
| 参数 | 类型 | Description |
|---|---|---|
col |
pyspark.sql.Column 或 str |
表示有效的 IPv4 或 IPv6 CIDR 块的 STRING 或 BINARY 值。 |
示例
示例 1:规范化 IPv4 CIDR 块。
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('192.168.1.5/24',)], ['cidr'])
df.select(dbf.try_ip_cidr('cidr').alias('result')).collect()
[Row(result='192.168.1.0/24')]
示例 2:规范 IPv6 CIDR 块。
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('2001:db8::1/64',)], ['cidr'])
df.select(dbf.try_ip_cidr('cidr').alias('result')).collect()
[Row(result='2001:db8::/64')]
示例 3:输入返回 None无效。
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('invalid.ip/24',)], ['cidr'])
df.select(dbf.try_ip_cidr('cidr').alias('result')).collect()
[Row(result=None)]
示例 4: None 输入返回 None。
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(None,)], 'cidr: string')
df.select(dbf.try_ip_cidr('cidr').alias('result')).collect()
[Row(result=None)]