本文整理汇总了C++中types::str类的典型用法代码示例。如果您正苦于以下问题:C++ str类的具体用法?C++ str怎么用?C++ str使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了str类的17个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: fromstring
types::ndarray<typename types::numpy_type<dtype>::type, 1>
fromstring(types::str const &string, dtype d, long count,
types::str const &sep)
{
if (sep) {
types::list<typename types::numpy_type<dtype>::type> res(0);
if (count < 0)
count = std::numeric_limits<long>::max();
else
res.reserve(count);
size_t current;
size_t next = -1;
long numsplit = 0;
do {
current = next + 1;
next = string.find_first_of(sep, current);
typename types::numpy_type<dtype>::type item;
std::istringstream iss(
string.substr(current, next - current).get_data());
iss >> item;
res.push_back(item);
} while (next != types::str::npos && ++numsplit < count);
return {res};
} else {
if (count < 0)
开发者ID:artas360,项目名称:pythran,代码行数:25,代码来源:fromstring.hpp
示例2: endswith
bool endswith(types::str const& s, types::str const& suffix, long start, long end)
{
if(end == -1)
end = s.size();
long rstart = end - suffix.size();
return rstart >= start and s.compare(rstart, suffix.size(), suffix) == 0;
}
开发者ID:coyotte508,项目名称:pythran,代码行数:7,代码来源:endswith.hpp
示例3: write
void file::write(types::str const &str)
{
if (not is_open)
throw ValueError("I/O operation on closed file");
if (mode.find_first_of("wa+") == -1)
throw IOError("file.write() : File not opened for writing.");
fwrite(str.c_str(), sizeof(char), str.size(), **data);
}
开发者ID:artas360,项目名称:pythran,代码行数:8,代码来源:file.hpp
示例4: find
long find(types::str const &s, types::str const &value, long start,
long end)
{
if (end < 0)
end += s.size();
long a = s.find(value, start);
return (a > end) ? -1 : a;
}
开发者ID:decabyte,项目名称:pythran,代码行数:8,代码来源:find.hpp
示例5: startswith
bool startswith(types::str const &s, types::str const &prefix, long start,
long end)
{
if (end < 0)
end = s.size();
return (end - start) >= prefix.size() and
s.compare(start, prefix.size(), prefix) == 0;
}
开发者ID:LuisBL,项目名称:pythran,代码行数:8,代码来源:startswith.hpp
示例6: capitalize
types::str capitalize(types::str const &s)
{
if (s.empty())
return s;
else {
types::str copy = s;
copy[0] = ::toupper(s[0]);
std::transform(s.begin() + 1, s.end(), copy.begin() + 1, ::tolower);
return copy;
}
}
开发者ID:LuisBL,项目名称:pythran,代码行数:11,代码来源:capitalize.hpp
示例7: _join
void _join(types::str &buffer, T &&head, Types &&... tail)
{
if (head[0] == '/')
buffer = std::forward<T>(head);
else if (not buffer or *buffer.rbegin() == OS_SEP or
*buffer.rbegin() == '/')
buffer += std::forward<T>(head);
else {
buffer += OS_SEP;
buffer += std::forward<T>(head);
}
_join(buffer, std::forward<Types>(tail)...);
}
开发者ID:LuisBL,项目名称:pythran,代码行数:13,代码来源:join.hpp
示例8: count
long str::count(types::str const &sub) const
{
long counter = 0;
for (long z = find(sub); // begin by looking for sub
z != -1; // as long as we don't reach the end
z = find(sub, z + sub.size())) // look for another one
{
++counter;
}
return counter;
}
开发者ID:aguinet,项目名称:pythran,代码行数:11,代码来源:str.hpp
示例9: open
// Modifiers
void file::open(types::str const &filename, types::str const &strmode)
{
const char *smode = strmode.c_str();
// Python enforces that the mode, after stripping 'U', begins with 'r',
// 'w' or 'a'.
if (*smode == 'U') {
++smode;
} // Not implemented yet
data = utils::shared_ref<container_type>(filename, smode);
if (not**data)
throw types::IOError("Couldn't open file " + filename);
is_open = true;
}
开发者ID:artas360,项目名称:pythran,代码行数:15,代码来源:file.hpp
示例10: join
types::str join(S const &s, types::str const &iterable)
{
long ssize = std::distance(std::begin(s), std::end(s)) -
(std::is_same<S, types::str>::value ? 0 : 1);
/* first iterate over iterable to gather sizes */
size_t n = ssize * (iterable.size() - 1) + iterable.size();
std::string out(n, 0);
auto iter = iterable.begin();
auto oter = out.begin();
if (iter != iterable.end()) {
*oter++ = *iter++;
if (ssize)
for (; iter != iterable.end(); ++iter) {
oter = std::copy(std::begin(s), std::begin(s) + ssize, oter);
*oter++ = *iter;
}
else
std::copy(iter, iterable.end(), oter);
}
return {std::move(out)};
}
开发者ID:artas360,项目名称:pythran,代码行数:23,代码来源:join.hpp
示例11: lstrip
types::str lstrip(types::str const& self, types::str const& to_del = " ")
{
return types::str(self.begin() + self.find_first_not_of(to_del), self.end());
}
开发者ID:Pikalchemist,项目名称:pythran,代码行数:4,代码来源:lstrip.hpp
示例12: f
_file::_file(types::str const &filename, types::str const &strmode)
: f(fopen(filename.c_str(), strmode.c_str())), _buffer(nullptr),
_buffer_size(0)
{
}
开发者ID:artas360,项目名称:pythran,代码行数:5,代码来源:file.hpp
示例13: startswith
bool startswith(types::str const& s, types::str const& prefix, long start=0, size_t end=std::string::npos) {
if(end == std::string::npos)
end = s.size();
return (end - start) >= prefix.size() and s.compare(start, prefix.size(), prefix) == 0;
}
开发者ID:OnlySang,项目名称:pythran,代码行数:5,代码来源:startswith.hpp
示例14: upper
types::str upper(types::str const &s)
{
types::str copy = s;
std::transform(s.begin(), s.end(), copy.begin(), ::toupper);
return copy;
}
开发者ID:artas360,项目名称:pythran,代码行数:6,代码来源:upper.hpp
示例15: f
// TODO : no check on file existance?
_file::_file(types::str const &filename, types::str const &strmode)
: f(fopen(filename.c_str(), strmode.c_str()))
{
}
开发者ID:LuisBL,项目名称:pythran,代码行数:5,代码来源:file.hpp
示例16: rstrip
types::str rstrip(types::str const &self, types::str const &to_del)
{
return {self.begin(), self.begin() + self.find_last_not_of(to_del) + 1};
}
开发者ID:artas360,项目名称:pythran,代码行数:4,代码来源:rstrip.hpp
示例17: isalpha
bool isalpha(types::str const &s)
{
return !s.empty() && std::all_of(s.chars().begin(), s.chars().end(),
(int (*)(int))std::isalpha);
}
开发者ID:serge-sans-paille,项目名称:pythran,代码行数:5,代码来源:isalpha.hpp
注:本文中的types::str类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论