2026/05/22 - substr()
substr()
substr是C++语言函数,主要功能是复制子字符串,要求从指定位置开始,并具有指定的长度。如果没有指定长度_Count或_Count+_Off超出了源字符串的长度,则子字符串将延续到源字符串的结尾。 ——节选自百度百科
用法:
对于字符串str,写法如下:
str.substr(pos,len);
其中pos表示子串在原字符串中开始的下标,len表示要截取的子串长度,注意pos从0开始。
如果pos大于了原字符串的长度,函数会抛出一个 std::out_of_range 类型的异常。如果pos+len大于了原字符串的长度,函数会自动截取到末尾,不会抛出异常,而是安全地返回从pos到末尾的子串。
需注意的是,substr不可用于char型或其他C风格字符数组。
另外,substr基于字节工作,所以如果对中文(UTF-8,占3字节)进行截断,很有可能无法截取整个汉字而导致乱码,所以其在非ASCII环境下并不安全。

浙公网安备 33010602011771号