当前位置: 首页>>代码示例>>C++>>正文


C++ StringT::begin方法代码示例

本文整理汇总了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();
			}
		}
开发者ID:ioquatix,项目名称:kai,代码行数:12,代码来源:Token.cpp

示例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();
		}
开发者ID:ioquatix,项目名称:kai,代码行数:53,代码来源:Strings.cpp

示例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();
		}
开发者ID:ioquatix,项目名称:kai,代码行数:17,代码来源:Strings.cpp

示例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);
 }
开发者ID:13W,项目名称:icq-desktop,代码行数:4,代码来源:std_regex.hpp

示例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);
 }
开发者ID:13W,项目名称:icq-desktop,代码行数:6,代码来源:spirit_qi.hpp


注:本文中的StringT::begin方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。