关注 每天一道编程题 专栏,一起学习进步。

题目

Given a valid (IPv4) IP address, return a defanged version of that IP address.

A defanged IP address replaces every period “.” with “[.]”.

Example 1:

Input: address = “1.1.1.1”
Output: “1[.]1[.]1[.]1”

Example 2:

Input: address = “255.100.50.0”
Output: “255[.]100[.]50[.]0”

Constraints:

The given address is a valid IPv4 address.

解析

显然,就是将英文句号用括号包起来

答案

//将.换成[.]
return address.replace(".","[.]");

//将address按.拆分,然后分别加入[.]
return "[.]".join(address.split("."));

//基于正则表达式
return address.replaceAll("\\.", "[.]");

replace 与replaceAll

replace的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换(CharSequence即字符串序列的意思,说白了也就是字符串);

replaceAll的参数是regex,即基于规则表达式的替换,比如:可以通过replaceAll("\d", “*”)把一个字符串所有的数字字符都换成星号;