TensorFlow 字符串操作

目录

  • 示例 1:字符串拼接
  • 示例 2:字符串分割
  • 示例 3:字符串大小写转换
  • 示例 4:字符串长度
  • 示例 5:正则匹配

TensorFlow 提供了 tf.strings 模块,支持常见的字符串操作:

示例 1:字符串拼接

import tensorflow as tf

# 创建字符串张量
tensor1 = tf.constant(["Hello", "TensorFlow"])
tensor2 = tf.constant(["World", "Strings"])

# 拼接字符串
result = tf.strings.join([tensor1, tensor2], separator=" ")
print(result.numpy())  

结果如下:

[b'Hello World' b'TensorFlow Strings']

备注:b’…’ 表示 Python 中的字节字符串(而非 Unicode 字符串)。

示例 2:字符串分割

import tensorflow as tf

text = tf.constant("apple,banana,orange")
split_result = tf.strings.split(text, sep=",")
print(split_result.numpy()) 

结果如下:

[b'apple' b'banana' b'orange']

示例 3:字符串大小写转换

import tensorflow as tf

# 转换为大写
text = tf.constant(["hello", "TensorFlow"])
upper = tf.strings.upper(text)
print(upper.numpy())

结果如下:

[b'HELLO' b'TENSORFLOW']

示例 4:字符串长度

import tensorflow as tf

# 计算字符串长度(按字节)
text = tf.constant(["深度学习", "TensorFlow"])
length = tf.strings.length(text, unit="UTF8_CHAR")  # 按字符计算
print(length.numpy())

结果如下:

[ 4 10]

示例 5:正则匹配

import tensorflow as tf

# 检查是否匹配正则表达式
text = tf.constant(["2023-01-01", "股票代码:600519"])
pattern = r"\d{4}-\d{2}-\d{2}"  # 匹配日期格式
matches = tf.strings.regex_full_match(text, pattern)
print(matches.numpy())  # 输出:[ True False]

结果如下:

[ True False]

你可能感兴趣的:(TensorFlow,python,tensorflow)