blob: 11810d841866867a5c082a165e8f650ee9bc1401 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!-- Copyright David Abrahams 2006. Distributed under the Boost -->
<!-- Software License, Version 1.0. (See accompanying -->
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
<html>
<head>
<meta name="generator" content=
"HTML Tidy for Windows (vers 1st August 2002), see www.w3.org">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="../boost.css">
<title>Boost.Python - &lt;boost/python/str.hpp&gt;</title>
</head>
<body>
<table border="0" cellpadding="7" cellspacing="0" width="100%" summary=
"header">
<tr>
<td valign="top" width="300">
<h3><a href="../../../../index.htm"><img height="86" width="277"
alt="C++ Boost" src="../../../../boost.png" border="0"></a></h3>
</td>
<td valign="top">
<h1 align="center"><a href="../index.html">Boost.Python</a></h1>
<h2 align="center">Header &lt;boost/python/str.hpp&gt;</h2>
</td>
</tr>
</table>
<hr>
<h2>Contents</h2>
<dl class="page-index">
<dt><a href="#introduction">Introduction</a></dt>
<dt><a href="#classes">Classes</a></dt>
<dd>
<dl class="page-index">
<dt><a href="#str-spec">Class <code>str</code></a></dt>
<dd>
<dl class="page-index">
<dt><a href="#str-spec-synopsis">Class <code>str</code>
synopsis</a></dt>
</dl>
</dd>
</dl>
</dd>
<dt><a href="#examples">Example(s)</a></dt>
</dl>
<hr>
<h2><a name="introduction"></a>Introduction</h2>
<p>Exposes a <a href=
"ObjectWrapper.html#TypeWrapper-concept">TypeWrapper</a> for the Python
<a href=
"http://www.python.org/dev/doc/devel/lib/string-methods.html">str</a>
type.</p>
<h2><a name="classes"></a>Classes</h2>
<h3><a name="str-spec"></a>Class <code>str</code></h3>
<p>Exposes the <a href=
"http://www.python.org/dev/doc/devel/lib/string-methods.html">string
methods</a> of Python's built-in <code>str</code> type. The
semantics of the constructors and member functions defined below,
except for the two-argument constructors which construct str
objects from a range of characters, can be fully understood by
reading the <a href=
"ObjectWrapper.html#TypeWrapper-concept">TypeWrapper</a> concept
definition. Since <code>str</code> is publicly derived from
<code><a href="object.html#object-spec">object</a></code>, the
public object interface applies to <code>str</code> instances as
well.</p>
<h4><a name="str-spec-synopsis"></a>Class <code>str</code>
synopsis</h4>
<pre>
namespace boost { namespace python
{
class str : public object
{
public:
str(); // new str
str(char const* s); // new str
str(char const* start, char const* finish); // new str
str(char const* start, std::size_t length); // new str
template &lt;class T&gt;
explicit str(T const&amp; other);
str capitalize() const;
template &lt;class T&gt;
str center(T const&amp; width) const;
template&lt;class T&gt;
long count(T const&amp; sub) const;
template&lt;class T1, class T2&gt;
long count(T1 const&amp; sub,T2 const&amp; start) const;
template&lt;class T1, class T2, class T3&gt;
long count(T1 const&amp; sub,T2 const&amp; start, T3 const&amp; end) const;
object decode() const;
template&lt;class T&gt;
object decode(T const&amp; encoding) const;
template&lt;class T1, class T2&gt;
object decode(T1 const&amp; encoding, T2 const&amp; errors) const;
object encode() const;
template &lt;class T&gt;
object encode(T const&amp; encoding) const;
template &lt;class T1, class T2&gt;
object encode(T1 const&amp; encoding, T2 const&amp; errors) const;
template &lt;class T&gt;
bool endswith(T const&amp; suffix) const;
template &lt;class T1, class T2&gt;
bool endswith(T1 const&amp; suffix, T2 const&amp; start) const;
template &lt;class T1, class T2, class T3&gt;
bool endswith(T1 const&amp; suffix, T2 const&amp; start, T3 const&amp; end) const;
str expandtabs() const;
template &lt;class T&gt;
str expandtabs(T const&amp; tabsize) const;
template &lt;class T&gt;
long find(T const&amp; sub) const;
template &lt;class T1, class T2&gt;
long find(T1 const&amp; sub, T2 const&amp; start) const;
template &lt;class T1, class T2, class T3&gt;
long find(T1 const&amp; sub, T2 const&amp; start, T3 const&amp; end) const;
template &lt;class T&gt;
long index(T const&amp; sub) const;
template &lt;class T1, class T2&gt;
long index(T1 const&amp; sub, T2 const&amp; start) const;
template &lt;class T1, class T2, class T3&gt;
long index(T1 const&amp; sub, T2 const&amp; start, T3 const&amp; end) const;
bool isalnum() const;
bool isalpha() const;
bool isdigit() const;
bool islower() const;
bool isspace() const;
bool istitle() const;
bool isupper() const;
template &lt;class T&gt;
str join(T const&amp; sequence) const;
template &lt;class T&gt;
str ljust(T const&amp; width) const;
str lower() const;
str lstrip() const;
template &lt;class T1, class T2&gt;
str replace(T1 const&amp; old, T2 const&amp; new_) const;
template &lt;class T1, class T2, class T3&gt;
str replace(T1 const&amp; old, T2 const&amp; new_, T3 const&amp; maxsplit) const;
template &lt;class T&gt;
long rfind(T const&amp; sub) const;
template &lt;class T1, class T2&gt;
long rfind(T1 const&amp; sub, T2 const&amp; start) const;
template &lt;class T1, class T2, class T3&gt;
long rfind(T1 const&amp; sub, T2 const&amp; start, T3 const&amp; end) const;
template &lt;class T&gt;
long rindex(T const&amp; sub) const;
template &lt;class T1, class T2&gt;
long rindex(T1 const&amp; sub, T2 const&amp; start) const;
template &lt;class T1, class T2, class T3&gt;
long rindex(T1 const&amp; sub, T2 const&amp; start, T3 const&amp; end) const;
template &lt;class T&gt;
str rjust(T const&amp; width) const;
str rstrip() const;
list split() const;
template &lt;class T&gt;
list split(T const&amp; sep) const;
template &lt;class T1, class T2&gt;
list split(T1 const&amp; sep, T2 const&amp; maxsplit) const;
list splitlines() const;
template &lt;class T&gt;
list splitlines(T const&amp; keepends) const;
template &lt;class T&gt;
bool startswith(T const&amp; prefix) const;
template &lt;class T1, class T2&gt;
bool startswidth(T1 const&amp; prefix, T2 const&amp; start) const;
template &lt;class T1, class T2, class T3&gt;
bool startswidth(T1 const&amp; prefix, T2 const&amp; start, T3 const&amp; end) const;
str strip() const;
str swapcase() const;
str title() const;
template &lt;class T&gt;
str translate(T const&amp; table) const;
template &lt;class T1, class T2&gt;
str translate(T1 const&amp; table, T2 const&amp; deletechars) const;
str upper() const;
};
}}
</pre>
<h2><a name="examples"></a>Example</h2>
<pre>
using namespace boost::python;
str remove_angle_brackets(str x)
{
return x.strip('&lt;').strip('&gt;');
}
</pre>
<p>Revised 3 October, 2002</p>
<p><i>&copy; Copyright <a href=
"http://www.boost.org/people/dave_abrahams.htm">Dave Abrahams</a> 2002.</i></p>
</body>
</html>