...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Exposes a TypeWrapper
for the Python str
type.
Exposes the string
methods of Python's built-in str
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 TypeWrapper
concept definition. Since str is publicly derived from object
, the public object
interface applies to str
instances as well.
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 <class T> explicit str(T const& other); str capitalize() const; template <class T> str center(T const& width) const; template<class T> long count(T const& sub) const; template<class T1, class T2> long count(T1 const& sub,T2 const& start) const; template<class T1, class T2, class T3> long count(T1 const& sub,T2 const& start, T3 const& end) const; object decode() const; template<class T> object decode(T const& encoding) const; template<class T1, class T2> object decode(T1 const& encoding, T2 const& errors) const; object encode() const; template <class T> object encode(T const& encoding) const; template <class T1, class T2> object encode(T1 const& encoding, T2 const& errors) const; template <class T> bool endswith(T const& suffix) const; template <class T1, class T2> bool endswith(T1 const& suffix, T2 const& start) const; template <class T1, class T2, class T3> bool endswith(T1 const& suffix, T2 const& start, T3 const& end) const; str expandtabs() const; template <class T> str expandtabs(T const& tabsize) const; template <class T> long find(T const& sub) const; template <class T1, class T2> long find(T1 const& sub, T2 const& start) const; template <class T1, class T2, class T3> long find(T1 const& sub, T2 const& start, T3 const& end) const; template <class T> long index(T const& sub) const; template <class T1, class T2> long index(T1 const& sub, T2 const& start) const; template <class T1, class T2, class T3> long index(T1 const& sub, T2 const& start, T3 const& end) const; bool isalnum() const; bool isalpha() const; bool isdigit() const; bool islower() const; bool isspace() const; bool istitle() const; bool isupper() const; template <class T> str join(T const& sequence) const; template <class T> str ljust(T const& width) const; str lower() const; str lstrip() const; template <class T1, class T2> str replace(T1 const& old, T2 const& new_) const; template <class T1, class T2, class T3> str replace(T1 const& old, T2 const& new_, T3 const& maxsplit) const; template <class T> long rfind(T const& sub) const; template <class T1, class T2> long rfind(T1 const& sub, T2 const& start) const; template <class T1, class T2, class T3> long rfind(T1 const& sub, T2 const& start, T3 const& end) const; template <class T> long rindex(T const& sub) const; template <class T1, class T2> long rindex(T1 const& sub, T2 const& start) const; template <class T1, class T2, class T3> long rindex(T1 const& sub, T2 const& start, T3 const& end) const; template <class T> str rjust(T const& width) const; str rstrip() const; list split() const; template <class T> list split(T const& sep) const; template <class T1, class T2> list split(T1 const& sep, T2 const& maxsplit) const; list splitlines() const; template <class T> list splitlines(T const& keepends) const; template <class T> bool startswith(T const& prefix) const; template <class T1, class T2> bool startswidth(T1 const& prefix, T2 const& start) const; template <class T1, class T2, class T3> bool startswidth(T1 const& prefix, T2 const& start, T3 const& end) const; str strip() const; str swapcase() const; str title() const; template <class T> str translate(T const& table) const; template <class T1, class T2> str translate(T1 const& table, T2 const& deletechars) const; str upper() const; }; }}
using namespace boost::python; str remove_angle_brackets(str x) { return x.strip('<').strip('>'); }