carloscn / structstudy

Leetcode daily trainning by using C/C++/RUST programming.
4 stars 1 forks source link

leetcode1108:IP 地址无效化(defanging-an-ip-address) #187

Open carloscn opened 1 year ago

carloscn commented 1 year ago

问题描述

给你一个有效的 IPv4 地址 address,返回这个 IP 地址的无效化版本。

所谓无效化 IP 地址,其实就是用 "[.]" 代替了每个 "."。

示例 1:

输入:address = "1.1.1.1" 输出:"1[.]1[.]1[.]1"

示例 2:

输入:address = "255.100.50.0" 输出:"255[.]100[.]50[.]0"  

提示:

给出的 address 是一个有效的 IPv4 地址

来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/defanging-an-ip-address

carloscn commented 1 year ago

问题分析

pub fn defang_i_paddr(address: String) -> String
{
    let mut ret_str:String = String::new();

    if address.len() < 1 {
        return ret_str;
    }

    let in_vec:Vec<char> = address.chars().collect();

    for e in &in_vec {
        if '.' != *e {
            ret_str.push(*e);
        } else {
            ret_str.push_str("[.]");
        }
    }

    return ret_str;
}
carloscn commented 1 year ago

code

https://review.gerrithub.io/c/carloscn/structstudy/+/552718 https://github.com/carloscn/structstudy/commit/f5d370ac6e6e5314c5aac7b2d1585ca2016d7ade