https://leetcode.com/problems/defanging-an-ip-address/html
这道题自己很简单,正则表达式
Given a valid (IPv4) IP address
, return a defanged version of that IP address.spa
A defanged IP address replaces every period "."
with "[.]"
.翻译
翻译就是,给出一个ipv4地址,把这个地址中的“.”转换为"[.]",可是做者不是很懂为啥要换成这个。2333code
其实这道题最简单的办法就是用正则表达式,可是考虑到不少正则表达式的时间复杂度和空间复杂度有点大,咱们此次就用傻办法,反正之后确定会有更合适的正则表达式使用的地方。htm
substr :http://www.javashuo.com/article/p-ndqnmhbj-dn.html ,由于'.' 是一个char,因此不能直接转换到"[.]",由于是一个string,因此咱们须要用substr。blog
class Solution {
public:
string defangIPaddr(string address) {
for (int i = address.size() - 2; i >= 0; i--)
if (address[i] == '.')
address = address.substr(0, i) + "[.]" + address.substr(i + 1);
return address;
}
};ip
咱们从倒数第二位开始扫描,由于地址的最后一位确定不是 ‘。’leetcode
咱们一旦发现了一个点,咱们就用substr来重组整个地址,而后输出,很是简单。get