本文整理汇总了C++中str::substr方法的典型用法代码示例。如果您正苦于以下问题:C++ str::substr方法的具体用法?C++ str::substr怎么用?C++ str::substr使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类str
的用法示例。
在下文中一共展示了str::substr方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: from_str
time_stamp_t time_stamp_t::from_str(const str &s)
{
size_t space_at;
for (space_at = 0; space_at < s.length(); space_at++) {
if (s[space_at] == ' ')
break;
}
if (space_at == s.length() - 1) {
throw std::invalid_argument("Malformed time stamp: " + s + ".");
}
str d = s.substr(0, space_at);
str t = s.substr(space_at + 1, s.length() - space_at - 1);
return time_stamp_t(date_t::from_str(d),
time_t::from_str(t));
}
示例2: get_filename_from_pathname
str get_filename_from_pathname(const str& pathname)
{
auto pos = pathname.find_last_of('/');
if(pos == pathname.size() - 1)
throw std::runtime_error("bad pathname: " + pathname);
else if(pos != str::npos)
return pathname.substr(pos + 1);
return pathname;
}
示例3:
std::vector<str> load_lines(const str& s)
{
std::vector<str> result;
size_t curr = 0;
for(size_t i = 0; i < s.length(); i++)
{
if (s[i] == '\n')
{
result.push_back( s.substr(curr, i) );
curr = i;
}
}
return result;
}
示例4: extract_delimited_text
str::size_type extract_delimited_text(const str& in, const str& d1, const str& d2, str& out, size_t pos)
{
if(pos == str::npos)
return pos;
size_t end = pos;
if((pos = in.find(d1, pos)) != str::npos)
if((end = in.find(d2, (pos = pos + d1.size()))) != str::npos)
{
out = in.substr(pos, end - pos);
return end + d2.size();
}
return str::npos;
}
示例5: property_value
void property_value(const str& value)
{
current_.add_prop( propname_, value.substr(1, value.size() - 2) );
}