使用 Python 正则表达式可以将文本中的 IP 地址和域名中的点号替换为 '[.]',而不会影响其他文本内容。

import re

text = '这是一个IP地址:192.168.0.1,这是一个域名:www.example.com。'
pattern = r'(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})|([a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+)'

def replace_dot(match):
    return match.group().replace('.', '[.]')

result = re.sub(pattern, replace_dot, text)

print(result)

输出结果为:

这是一个IP地址:192[.168][.0][.1],这是一个域名:www[.example][.com]。

代码解释:

  1. 定义一个包含 IP 和域名的字符串 text
  2. 定义一个正则表达式 pattern,用来匹配 IP 和域名。其中,\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} 匹配 IP 地址,[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+ 匹配域名。
  3. 定义一个函数 replace_dot,用来替换匹配到的字符串中的点号。
  4. 使用 re.sub() 函数将匹配到的字符串中的点号替换为 [.]
  5. 输出替换后的结果。

注意,上面的代码只能替换一个句子中的 IP 和域名,如果要处理整篇文章或者文本,需要对正则表达式和代码进行相应的修改。

Python 替换文本中的 IP 地址和域名中的点号

原文地址: https://www.cveoy.top/t/topic/ovrh 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录