本文整理汇总了C++中StringT::begin方法的典型用法代码示例。如果您正苦于以下问题:C++ StringT::begin方法的具体用法?C++ StringT::begin怎么用?C++ StringT::begin使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类StringT
的用法示例。
在下文中一共展示了StringT::begin方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: parse_constant
Token parse_constant(StringIteratorT begin, StringIteratorT end, const StringT & constant) {
StringIteratorT s = begin;
StringIteratorT c = constant.begin();
while (s != end && c != constant.end() && *c == *s) s++, c++;
if (c == constant.end()) {
return Token(begin, s);
} else {
return Token();
}
}
示例2: unescape_string
StringT unescape_string (const StringT & value) {
StringStreamT buffer;
StringT::const_iterator i = value.begin(), end = value.end();
// Skip enclosing quotes
++i;
--end;
for (; i < end; ++i) {
if (*i == '\\') {
++i;
switch (*i) {
case 't':
buffer << '\t';
continue;
case 'r':
buffer << '\r';
continue;
case 'n':
buffer << '\n';
continue;
case '\\':
buffer << '\\';
continue;
case '"':
buffer << '"';
continue;
case '\'':
buffer << '\'';
continue;
case 'x':
if ((end - i) >= 2) {
StringT::value_type value = Math::convert_to_digit(*(++i)) << 4;
value |= Math::convert_to_digit(*(++i));
buffer << (StringT::value_type)value;
continue;
} else {
break;
}
case '.':
continue;
}
throw std::runtime_error("Could not parse string escape!");
} else {
buffer << *i;
}
}
return buffer.str();
}
示例3: escape_string
StringT escape_string (const StringT & value) {
StringStreamT buffer;
StringT::const_iterator i = value.begin(), end = value.end();
buffer << '"';
for (; i != end; ++i) {
if (*i == '"') {
buffer << "\\\"";
} else {
buffer << *i;
}
}
buffer << '"';
return buffer.str();
}
示例4: matches
static bool matches(StringT const& str, std::basic_regex< CharT, ReTraitsT > const& expr, std::regex_constants::match_flag_type flags = std::regex_constants::match_default)
{
return std::regex_match(str.begin(), str.end(), expr, flags);
}
示例5: matches
static bool matches(StringT const& str, compiled_type const& expr)
{
typedef typename StringT::const_iterator const_iterator;
const_iterator it = str.begin(), end = str.end();
return (spirit::qi::parse(it, end, expr) && it == end);
}