LeetCode刷题记录(三十七):IP 地址无效化


theme: smartblue

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第26天,点击查看活动详情

IP 地址无效化

image.png

题目解析

题目难度:简单
题目素材解析

根据题目的描述和代码模板来看,只提供了一个素材:

那就是一个IPv4的地址,绝对是一个有效的地址。

比如127.0.0.1,又比如192.168.0.1等等

我的解读

这道题简直了,我读了好几遍,都不敢相信竟然有这么简单的一道题。

就是将一个ip地址中的字符.替换成[.]

真是直白,特地读了几遍题目,但确实是这个样子。

解题思路

要解决这个问题,没什么花里胡哨的。

每一个编程语言中都有替换字符串的方法,就比如Java的replace方法。

使用这个方法就可以实现全部.的替换。

当然了,如果还想提升一下,也可以细看一下replace的源码。

replace的源码

image.png

通过这个方法,我们看的出来首先要确定传入的两个字符不相等;如果相等就直接返回原值即可。

然后在不相等的情况下,再次判断oldChar值是否大于原值的长度。

如果没有超过,则进入while循环中,判断原字符串中是否含有oldChar,如果含有则可以进行下一步。

如果根本没有这个值,则进入不了下面的if条件,即返回原值。

如果前面的条件都满足,则通过一个循环将原字符串放入char数组中。

最后通过一个循环,替换匹配的值。

一顿操作,发现不对

刚才是char类型的参数,其实我们传入的字符串是通过下面的这个方法传入的。

image.png

通过此方法通过正则来处理,然后通过replaceAll参数来处理的。

大家可以自行去看与喜爱replaceAll方法,很容易看懂。

代码

java class Solution { public String defangIPaddr(String address) { return address.replace(".", "[.]"); } }

执行结果

执行结果没有什么可说的,这道题实在是太基础了。

image.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ijiran

一杯咖啡太贵,一块糖就可以

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值