Edinburgh Speech Tools 2.4-release
EST_String Class Reference

#include <include/EST_String.h>

Inheritance diagram for EST_String:
Collaboration diagram for EST_String:

Public Types

typedef int EST_string_size
 Type of string size field. More...
 

Public Member Functions

Before
EST_String before (int pos, int len=0) const
 Part before position. More...
 
EST_String before (const char *s, int pos=0) const
 Part before first matching substring after pos. More...
 
EST_String before (const EST_String &s, int pos=0) const
 Part before first matching substring after pos. More...
 
EST_String before (EST_Regex &e, int pos=0) const
 Part before first match of regexp after pos. More...
 
At
EST_String at (int from, int len=0) const
 Return part at position. More...
 
EST_String at (const char *s, int pos=0) const
 Return part where substring found (not useful, included for completeness) More...
 
EST_String at (const EST_String &s, int pos=0) const
 Return part where substring found (not useful, included for completeness) More...
 
EST_String at (EST_Regex &e, int pos=0) const
 Return part matching regexp. More...
 
After
EST_String after (int pos, int len=1) const
 Part after pos+len. More...
 
EST_String after (const char *s, int pos=0) const
 Part after substring. More...
 
EST_String after (const EST_String &s, int pos=0) const
 Part after substring. More...
 
EST_String after (EST_Regex &e, int pos=0) const
 Part after match of regular expression. More...
 
Search for something
int search (const char *s, int len, int &mlen, int pos=0) const
 Find a substring. More...
 
int search (const EST_String s, int &mlen, int pos=0) const
 Find a substring. More...
 
int search (EST_Regex &re, int &mlen, int pos=0, int *starts=NULL, int *ends=NULL) const
 Find a match of the regular expression. More...
 
Get position of something
int index (const char *s, int pos=0) const
 Position of substring (starting at pos) More...
 
int index (const EST_String &s, int pos=0) const
 Position of substring (starting at pos) More...
 
int index (EST_Regex &ex, int pos=0) const
 Position of match of regexp (starting at pos) More...
 
Does string contain something?
int contains (const char *s, int pos=-1) const
 Does it contain this substring? More...
 
int contains (const EST_String &s, int pos=-1) const
 Does it contain this substring? More...
 
int contains (const char c, int pos=-1) const
 Does it contain this character? More...
 
int contains (EST_Regex &ex, int pos=-1) const
 Does it contain a match for this regular expression? More...
 
Does string exactly match?
int matches (const char *e, int pos=0) const
 Exactly match this string? More...
 
int matches (const EST_String &e, int pos=0) const
 Exactly match this string? More...
 
int matches (EST_Regex &e, int pos=0, int *starts=NULL, int *ends=NULL) const
 Exactly matches this regular expression, can return ends of sub-expressions. More...
 
Global replacement
int gsub (const char *os, const EST_String &s)
 Substitute one string for another. More...
 
int gsub (const char *os, const char *s)
 Substitute one string for another. More...
 
int gsub (const EST_String &os, const EST_String &s)
 Substitute one string for another. More...
 
int gsub (const EST_String &os, const char *s)
 Substitute one string for another. More...
 
int gsub (EST_Regex &ex, const EST_String &s)
 Substitute string for matches of regular expression. More...
 
int gsub (EST_Regex &ex, const char *s)
 Substitute string for matches of regular expression. More...
 
int gsub (EST_Regex &ex, int bracket_num)
 Substitute string for matches of regular expression. More...
 
int subst (EST_String source, int(&starts)[EST_Regex_max_subexpressions], int(&ends)[EST_Regex_max_subexpressions])
 Substitute the result of a match into a string. More...
 
Frequency counts
int freq (const char *s) const
 Number of occurrences of substring. More...
 
int freq (const EST_String &s) const
 Number of occurrences of substring. More...
 
int freq (EST_Regex &s) const
 Number of matches of regular expression. More...
 
Quoting
EST_String quote (const char quotec) const
 Return the string in quotes with internal quotes protected. More...
 
EST_String quote_if_needed (const char quotec) const
 Return in quotes if there is something to protect (e.g. spaces) More...
 
EST_String unquote (const char quotec) const
 Remove quotes and unprotect internal quotes. More...
 
EST_String unquote_if_needed (const char quotec) const
 Remove quotes if any. More...
 
Operators
const char operator() (int i) const
 Function style access to constant strings. More...
 
char & operator[] (int i)
 Array style access to writable strings. More...
 
 operator const char * () const
 Cast to const char * by simply giving access to pointer. More...
 
 operator const char * ()
 
 operator char * ()
 Cast to char *, may involve copying. More...
 
Add to end of string.
EST_Stringoperator+= (const char *b)
 Add C string to end of EST_String. More...
 
EST_Stringoperator+= (const EST_String b)
 Add EST_String to end of EST_String. More...
 
Assignment
EST_Stringoperator= (const char *str)
 Assign C string to EST_String. More...
 

Static Public Attributes

static const char * version = "CSTR String Class " STRING_VERSION " " STRING_DATE
 Global version string. More...
 
static const EST_String Empty
 Constant empty string. More...
 

Friends

Concatenation

Assign single character to EST_String

EST_String operator+ (const EST_String &a, const EST_String &b)
 Concatenate two EST_Strings. More...
 
EST_String operator+ (const char *a, const EST_String &b)
 Concatenate C String with EST_String. More...
 
EST_String operator+ (const EST_String &a, const char *b)
 Concatenate EST_String with C String. More...
 
EST_String operator* (const EST_String &s, int n)
 Repeat string N times. More...
 
relational operators
int operator== (const char *a, const EST_String &b)
 
int operator== (const EST_String &a, const char *b)
 
int operator== (const EST_String &a, const EST_String &b)
 
int operator!= (const char *a, const EST_String &b)
 
int operator!= (const EST_String &a, const char *b)
 
int operator!= (const EST_String &a, const EST_String &b)
 
int operator< (const char *a, const EST_String &b)
 
int operator< (const EST_String &a, const char *b)
 
int operator< (const EST_String &a, const EST_String &b)
 
int operator> (const char *a, const EST_String &b)
 
int operator> (const EST_String &a, const char *b)
 
int operator> (const EST_String &a, const EST_String &b)
 
int operator<= (const char *a, const EST_String &b)
 
int operator<= (const EST_String &a, const char *b)
 
int operator<= (const EST_String &a, const EST_String &b)
 
int operator>= (const char *a, const EST_String &b)
 
int operator>= (const EST_String &a, const char *b)
 
int operator>= (const EST_String &a, const EST_String &b)
 
String comparison.

All these operators return -1, 0 or 1 to indicate the sort order of the strings.

int compare (const EST_String &a, const EST_String &b)
 
int compare (const EST_String &a, const char *b)
 
int compare (const char *a, const EST_String &b)
 
int fcompare (const EST_String &a, const EST_String &b, const unsigned char *table)
 
int fcompare (const EST_String &a, const EST_String &b)
 
int fcompare (const EST_String &a, const char *b, const unsigned char *table)
 
int fcompare (const EST_String &a, const EST_String &b, const EST_String &table)
 

Split a string into parts.

These functions divide up a string producing an array of substrings.

class EST_Regex
 
int split (const EST_String &s, EST_String result[], int max, const EST_String &seperator, char quote=0)
 Split at a given separator. More...
 
int split (const EST_String &s, EST_String result[], int max, const char *seperator, char quote=0)
 Split at a given separator. More...
 
int split (const EST_String &s, EST_String result[], int max, EST_Regex &seperator, char quote=0)
 Split at each match of the regular expression. More...
 
EST_String upcase (const EST_String &s)
 Convert to upper case. More...
 
EST_String downcase (const EST_String &s)
 Convert to lower case. More...
 
ostream & operator<< (ostream &s, const EST_String &str)
 Stream output for EST_String. More...
 
EST_Stringignore_volatile (void) volatile
 
static EST_String cat (const EST_String s1, const EST_String s2=Empty, const EST_String s3=Empty, const EST_String s4=Empty, const EST_String s5=Empty, const EST_String s6=Empty, const EST_String s7=Empty, const EST_String s8=Empty, const EST_String s9=Empty)
 

Global search and replace

 EST_String (void)
 Construct an empty string. More...
 
 EST_String (const char *s)
 Construct from char *. More...
 
 EST_String (const char *s, int start_or_fill, int len)
 Construct from part of char * or fill with given character. More...
 
 EST_String (const char *s, int s_size, int start, int len)
 Construct from C string. More...
 
 EST_String (const EST_String &s, int start, int len)
 
 ~EST_String ()
 Destructor. More...
 
int length (void) const
 Length of string ({not} length of underlying chunk) More...
 
int space (void) const
 Size of underlying chunk. More...
 
const char * str (void) const
 Get a const-pointer to the actual memory. More...
 
char * updatable_str (void)
 Get a writable pointer to the actual memory. More...
 
void make_updatable (void)
 
int Int (bool &ok) const
 Convert to an integer. More...
 
int Int (void) const
 
long Long (bool &ok) const
 Convert to a long. More...
 
long Long (void) const
 
float Float (bool &ok) const
 Convert to a float. More...
 
float Float (void) const
 
double Double (bool &ok) const
 Convert to a double. More...
 
double Double (void) const
 
static EST_String FromChar (const char c)
 Build string from a single character. More...
 
static EST_String Number (int i, int base=10)
 Build string from an integer. More...
 
static EST_String Number (long i, int base=10)
 Build string from a long integer. More...
 
static EST_String Number (double d)
 Build string from a double. More...
 
static EST_String Number (float f)
 Build string from a float. More...
 

Detailed Description

A non-copyleft implementation of a string class to use with compilers that aren't GNU C++.

Strings are reference-counted and reasonably efficient (eg you can pass them around, into and out of functions and so on without worrying too much about the cost).

The associated class EST_Regex can be used to represent regular expressions.

See also
EST_Chunk
EST_Regex
string_example
Author
Alan W Black awb@c.nosp@m.str..nosp@m.ed.ac.nosp@m..uk
Richard Caley rjc@c.nosp@m.str..nosp@m.ed.ac.nosp@m..uk
Version
Id
EST_String.h,v 1.11 2017/02/22 15:50:14 awb Exp

Definition at line 70 of file EST_String.h.

Member Typedef Documentation

◆ EST_string_size

Type of string size field.

Definition at line 114 of file EST_String.h.

Constructor & Destructor Documentation

◆ EST_String() [1/5]

EST_String::EST_String ( void  )
inline

Construct an empty string.

Definition at line 201 of file EST_String.h.

◆ EST_String() [2/5]

EST_String::EST_String ( const char *  s)

Construct from char *.

Definition at line 811 of file EST_String.cc.

◆ EST_String() [3/5]

EST_String::EST_String ( const char *  s,
int  start_or_fill,
int  len 
)

Construct from part of char * or fill with given character.

Definition at line 824 of file EST_String.cc.

◆ EST_String() [4/5]

EST_String::EST_String ( const char *  s,
int  s_size,
int  start,
int  len 
)

Construct from C string.

Definition at line 857 of file EST_String.cc.

◆ EST_String() [5/5]

EST_String::EST_String ( const EST_String s,
int  start,
int  len 
)

Definition at line 871 of file EST_String.cc.

◆ ~EST_String()

EST_String::~EST_String ( )
inline

Destructor.

Copy constructor We have to declare our own copy constructor to lie to the compiler about the constness of the RHS.

Definition at line 235 of file EST_String.h.

Member Function Documentation

◆ length()

int EST_String::length ( void  ) const
inline

Length of string ({not} length of underlying chunk)

Definition at line 241 of file EST_String.h.

◆ space()

int EST_String::space ( void  ) const
inline

Size of underlying chunk.

Definition at line 243 of file EST_String.h.

◆ str()

const char * EST_String::str ( void  ) const
inline

Get a const-pointer to the actual memory.

Definition at line 245 of file EST_String.h.

◆ updatable_str()

char * EST_String::updatable_str ( void  )
inline

Get a writable pointer to the actual memory.

Definition at line 247 of file EST_String.h.

◆ make_updatable()

void EST_String::make_updatable ( void  )
inline

Definition at line 248 of file EST_String.h.

◆ FromChar()

static EST_String EST_String::FromChar ( const char  c)
inlinestatic

Build string from a single character.

Definition at line 252 of file EST_String.h.

◆ Number() [1/4]

EST_String EST_String::Number ( int  i,
int  base = 10 
)
static

Build string from an integer.

Definition at line 1211 of file EST_String.cc.

◆ Number() [2/4]

EST_String EST_String::Number ( long  i,
int  base = 10 
)
static

Build string from a long integer.

Definition at line 1236 of file EST_String.cc.

◆ Number() [3/4]

EST_String EST_String::Number ( double  d)
static

Build string from a double.

Definition at line 1270 of file EST_String.cc.

◆ Number() [4/4]

EST_String EST_String::Number ( float  f)
static

Build string from a float.

Definition at line 1261 of file EST_String.cc.

◆ Int() [1/2]

int EST_String::Int ( bool &  ok) const
inline

Convert to an integer.

Definition at line 268 of file EST_String.h.

◆ Int() [2/2]

int EST_String::Int ( void  ) const
inline

Definition at line 269 of file EST_String.h.

◆ Long() [1/2]

long EST_String::Long ( bool &  ok) const
inline

Convert to a long.

Definition at line 272 of file EST_String.h.

◆ Long() [2/2]

long EST_String::Long ( void  ) const
inline

Definition at line 273 of file EST_String.h.

◆ Float() [1/2]

float EST_String::Float ( bool &  ok) const
inline

Convert to a float.

Definition at line 276 of file EST_String.h.

◆ Float() [2/2]

float EST_String::Float ( void  ) const
inline

Definition at line 277 of file EST_String.h.

◆ Double() [1/2]

double EST_String::Double ( bool &  ok) const
inline

Convert to a double.

Definition at line 280 of file EST_String.h.

◆ Double() [2/2]

double EST_String::Double ( void  ) const
inline

Definition at line 281 of file EST_String.h.

◆ before() [1/4]

EST_String EST_String::before ( int  pos,
int  len = 0 
) const
inline

Part before position.

Definition at line 286 of file EST_String.h.

◆ before() [2/4]

EST_String EST_String::before ( const char *  s,
int  pos = 0 
) const
inline

Part before first matching substring after pos.

Definition at line 289 of file EST_String.h.

◆ before() [3/4]

EST_String EST_String::before ( const EST_String s,
int  pos = 0 
) const
inline

Part before first matching substring after pos.

Definition at line 292 of file EST_String.h.

◆ before() [4/4]

EST_String EST_String::before ( EST_Regex e,
int  pos = 0 
) const
inline

Part before first match of regexp after pos.

Definition at line 295 of file EST_String.h.

◆ at() [1/4]

EST_String EST_String::at ( int  from,
int  len = 0 
) const
inline

Return part at position.

Definition at line 302 of file EST_String.h.

◆ at() [2/4]

EST_String EST_String::at ( const char *  s,
int  pos = 0 
) const
inline

Return part where substring found (not useful, included for completeness)

Definition at line 305 of file EST_String.h.

◆ at() [3/4]

EST_String EST_String::at ( const EST_String s,
int  pos = 0 
) const
inline

Return part where substring found (not useful, included for completeness)

Definition at line 308 of file EST_String.h.

◆ at() [4/4]

EST_String EST_String::at ( EST_Regex e,
int  pos = 0 
) const
inline

Return part matching regexp.

Definition at line 311 of file EST_String.h.

◆ after() [1/4]

EST_String EST_String::after ( int  pos,
int  len = 1 
) const
inline

Part after pos+len.

Definition at line 318 of file EST_String.h.

◆ after() [2/4]

EST_String EST_String::after ( const char *  s,
int  pos = 0 
) const
inline

Part after substring.

Definition at line 321 of file EST_String.h.

◆ after() [3/4]

EST_String EST_String::after ( const EST_String s,
int  pos = 0 
) const
inline

Part after substring.

Definition at line 324 of file EST_String.h.

◆ after() [4/4]

EST_String EST_String::after ( EST_Regex e,
int  pos = 0 
) const
inline

Part after match of regular expression.

Definition at line 327 of file EST_String.h.

◆ search() [1/3]

int EST_String::search ( const char *  s,
int  len,
int &  mlen,
int  pos = 0 
) const
inline

Find a substring.

Definition at line 334 of file EST_String.h.

◆ search() [2/3]

int EST_String::search ( const EST_String  s,
int &  mlen,
int  pos = 0 
) const
inline

Find a substring.

Definition at line 342 of file EST_String.h.

◆ search() [3/3]

int EST_String::search ( EST_Regex re,
int &  mlen,
int  pos = 0,
int *  starts = NULL,
int *  ends = NULL 
) const
inline

Find a match of the regular expression.

Definition at line 350 of file EST_String.h.

◆ index() [1/3]

int EST_String::index ( const char *  s,
int  pos = 0 
) const
inline

Position of substring (starting at pos)

Definition at line 362 of file EST_String.h.

◆ index() [2/3]

int EST_String::index ( const EST_String s,
int  pos = 0 
) const
inline

Position of substring (starting at pos)

Definition at line 365 of file EST_String.h.

◆ index() [3/3]

int EST_String::index ( EST_Regex ex,
int  pos = 0 
) const
inline

Position of match of regexp (starting at pos)

Definition at line 368 of file EST_String.h.

◆ contains() [1/4]

int EST_String::contains ( const char *  s,
int  pos = -1 
) const
inline

Does it contain this substring?

Definition at line 375 of file EST_String.h.

◆ contains() [2/4]

int EST_String::contains ( const EST_String s,
int  pos = -1 
) const
inline

Does it contain this substring?

Definition at line 378 of file EST_String.h.

◆ contains() [3/4]

int EST_String::contains ( const char  c,
int  pos = -1 
) const
inline

Does it contain this character?

Definition at line 381 of file EST_String.h.

◆ contains() [4/4]

int EST_String::contains ( EST_Regex ex,
int  pos = -1 
) const
inline

Does it contain a match for this regular expression?

Definition at line 384 of file EST_String.h.

◆ matches() [1/3]

int EST_String::matches ( const char *  e,
int  pos = 0 
) const

Exactly match this string?

Definition at line 652 of file EST_String.cc.

◆ matches() [2/3]

int EST_String::matches ( const EST_String e,
int  pos = 0 
) const

Exactly match this string?

Definition at line 669 of file EST_String.cc.

◆ matches() [3/3]

int EST_String::matches ( EST_Regex e,
int  pos = 0,
int *  starts = NULL,
int *  ends = NULL 
) const

Exactly matches this regular expression, can return ends of sub-expressions.

Definition at line 679 of file EST_String.cc.

◆ gsub() [1/7]

int EST_String::gsub ( const char *  os,
const EST_String s 
)
inline

Substitute one string for another.

Definition at line 401 of file EST_String.h.

◆ gsub() [2/7]

int EST_String::gsub ( const char *  os,
const char *  s 
)
inline

Substitute one string for another.

Definition at line 404 of file EST_String.h.

◆ gsub() [3/7]

int EST_String::gsub ( const EST_String os,
const EST_String s 
)
inline

Substitute one string for another.

Definition at line 407 of file EST_String.h.

◆ gsub() [4/7]

int EST_String::gsub ( const EST_String os,
const char *  s 
)
inline

Substitute one string for another.

Definition at line 410 of file EST_String.h.

◆ gsub() [5/7]

int EST_String::gsub ( EST_Regex ex,
const EST_String s 
)
inline

Substitute string for matches of regular expression.

Definition at line 414 of file EST_String.h.

◆ gsub() [6/7]

int EST_String::gsub ( EST_Regex ex,
const char *  s 
)
inline

Substitute string for matches of regular expression.

Definition at line 417 of file EST_String.h.

◆ gsub() [7/7]

int EST_String::gsub ( EST_Regex ex,
int  bracket_num 
)
inline

Substitute string for matches of regular expression.

Definition at line 420 of file EST_String.h.

◆ subst()

int EST_String::subst ( EST_String  source,
int(&)  starts[EST_Regex_max_subexpressions],
int(&)  ends[EST_Regex_max_subexpressions] 
)

Substitute the result of a match into a string.

Definition at line 467 of file EST_String.cc.

◆ freq() [1/3]

int EST_String::freq ( const char *  s) const

Number of occurrences of substring.

Definition at line 997 of file EST_String.cc.

◆ freq() [2/3]

int EST_String::freq ( const EST_String s) const

Number of occurrences of substring.

Definition at line 982 of file EST_String.cc.

◆ freq() [3/3]

int EST_String::freq ( EST_Regex s) const

Number of matches of regular expression.

Definition at line 1015 of file EST_String.cc.

◆ quote()

EST_String EST_String::quote ( const char  quotec) const

Return the string in quotes with internal quotes protected.

Definition at line 1029 of file EST_String.cc.

◆ quote_if_needed()

EST_String EST_String::quote_if_needed ( const char  quotec) const

Return in quotes if there is something to protect (e.g. spaces)

Definition at line 1068 of file EST_String.cc.

◆ unquote()

EST_String EST_String::unquote ( const char  quotec) const

Remove quotes and unprotect internal quotes.

Definition at line 1041 of file EST_String.cc.

◆ unquote_if_needed()

EST_String EST_String::unquote_if_needed ( const char  quotec) const

Remove quotes if any.

Definition at line 1078 of file EST_String.cc.

◆ operator()()

const char EST_String::operator() ( int  i) const
inline

Function style access to constant strings.

Definition at line 457 of file EST_String.h.

◆ operator[]()

char & EST_String::operator[] ( int  i)
inline

Array style access to writable strings.

Definition at line 459 of file EST_String.h.

◆ operator const char *() [1/2]

EST_String::operator const char * ( ) const
inline

Cast to const char * by simply giving access to pointer.

Definition at line 463 of file EST_String.h.

◆ operator const char *() [2/2]

EST_String::operator const char * ( )
inline

Definition at line 464 of file EST_String.h.

◆ operator char *()

EST_String::operator char * ( )
inline

Cast to char *, may involve copying.

Definition at line 466 of file EST_String.h.

◆ operator+=() [1/2]

EST_String & EST_String::operator+= ( const char *  b)

Add C string to end of EST_String.

Definition at line 765 of file EST_String.cc.

◆ operator+=() [2/2]

EST_String & EST_String::operator+= ( const EST_String  b)

Add EST_String to end of EST_String.

Definition at line 788 of file EST_String.cc.

◆ operator=()

EST_String & EST_String::operator= ( const char *  str)

Assign C string to EST_String.

Definition at line 907 of file EST_String.cc.

◆ cat()

EST_String EST_String::cat ( const EST_String  s1,
const EST_String  s2 = Empty,
const EST_String  s3 = Empty,
const EST_String  s4 = Empty,
const EST_String  s5 = Empty,
const EST_String  s6 = Empty,
const EST_String  s7 = Empty,
const EST_String  s8 = Empty,
const EST_String  s9 = Empty 
)
static

Concatenate a number of strings. This is more efficient than multiple uses of + or +=

Definition at line 1096 of file EST_String.cc.

◆ ignore_volatile()

EST_String & EST_String::ignore_volatile ( void  ) volatile
inline

Definition at line 638 of file EST_String.h.

Friends And Related Function Documentation

◆ EST_Regex

friend class EST_Regex ( void  )
friend

Definition at line 642 of file EST_String.h.

◆ operator+ [1/3]

EST_String operator+ ( const EST_String a,
const EST_String b 
)
friend

Concatenate two EST_Strings.

Definition at line 709 of file EST_String.cc.

◆ operator+ [2/3]

EST_String operator+ ( const char *  a,
const EST_String b 
)
friend

Concatenate C String with EST_String.

Definition at line 727 of file EST_String.cc.

◆ operator+ [3/3]

EST_String operator+ ( const EST_String a,
const char *  b 
)
friend

Concatenate EST_String with C String.

Definition at line 688 of file EST_String.cc.

◆ operator*

EST_String operator* ( const EST_String s,
int  n 
)
friend

Repeat string N times.

Definition at line 748 of file EST_String.cc.

◆ operator== [1/3]

int operator== ( const char *  a,
const EST_String b 
)
friend

Definition at line 1189 of file EST_String.cc.

◆ operator== [2/3]

int operator== ( const EST_String a,
const char *  b 
)
friend

Definition at line 506 of file EST_String.h.

◆ operator== [3/3]

int operator== ( const EST_String a,
const EST_String b 
)
friend

Definition at line 1201 of file EST_String.cc.

◆ operator!= [1/3]

int operator!= ( const char *  a,
const EST_String b 
)
friend

Definition at line 512 of file EST_String.h.

◆ operator!= [2/3]

int operator!= ( const EST_String a,
const char *  b 
)
friend

Definition at line 515 of file EST_String.h.

◆ operator!= [3/3]

int operator!= ( const EST_String a,
const EST_String b 
)
friend

Definition at line 518 of file EST_String.h.

◆ operator< [1/3]

int operator< ( const char *  a,
const EST_String b 
)
friend

Definition at line 522 of file EST_String.h.

◆ operator< [2/3]

int operator< ( const EST_String a,
const char *  b 
)
friend

Definition at line 525 of file EST_String.h.

◆ operator< [3/3]

int operator< ( const EST_String a,
const EST_String b 
)
friend

Definition at line 528 of file EST_String.h.

◆ operator> [1/3]

int operator> ( const char *  a,
const EST_String b 
)
friend

Definition at line 531 of file EST_String.h.

◆ operator> [2/3]

int operator> ( const EST_String a,
const char *  b 
)
friend

Definition at line 534 of file EST_String.h.

◆ operator> [3/3]

int operator> ( const EST_String a,
const EST_String b 
)
friend

Definition at line 537 of file EST_String.h.

◆ operator<= [1/3]

int operator<= ( const char *  a,
const EST_String b 
)
friend

Definition at line 540 of file EST_String.h.

◆ operator<= [2/3]

int operator<= ( const EST_String a,
const char *  b 
)
friend

Definition at line 543 of file EST_String.h.

◆ operator<= [3/3]

int operator<= ( const EST_String a,
const EST_String b 
)
friend

Definition at line 546 of file EST_String.h.

◆ operator>= [1/3]

int operator>= ( const char *  a,
const EST_String b 
)
friend

Definition at line 549 of file EST_String.h.

◆ operator>= [2/3]

int operator>= ( const EST_String a,
const char *  b 
)
friend

Definition at line 552 of file EST_String.h.

◆ operator>= [3/3]

int operator>= ( const EST_String a,
const EST_String b 
)
friend

Definition at line 555 of file EST_String.h.

◆ compare [1/3]

int compare ( const EST_String a,
const EST_String b 
)
friend

Definition at line 1138 of file EST_String.cc.

◆ compare [2/3]

int compare ( const EST_String a,
const char *  b 
)
friend

Definition at line 1150 of file EST_String.cc.

◆ compare [3/3]

int compare ( const char *  a,
const EST_String b 
)
friend

Definition at line 571 of file EST_String.h.

◆ fcompare [1/4]

int fcompare ( const EST_String a,
const EST_String b,
const unsigned char *  table 
)
friend

Case folded comparison.

The table argument can defined how upper and lower case characters correspond. The default works for ASCII.

Definition at line 1162 of file EST_String.cc.

◆ fcompare [2/4]

int fcompare ( const EST_String a,
const EST_String b 
)
friend

Definition at line 583 of file EST_String.h.

◆ fcompare [3/4]

int fcompare ( const EST_String a,
const char *  b,
const unsigned char *  table 
)
friend

Definition at line 1175 of file EST_String.cc.

◆ fcompare [4/4]

int fcompare ( const EST_String a,
const EST_String b,
const EST_String table 
)
friend

Definition at line 590 of file EST_String.h.

◆ split [1/3]

int split ( const EST_String s,
EST_String  result[],
int  max,
const EST_String seperator,
char  quote = 0 
)
friend

Split at a given separator.

Definition at line 605 of file EST_String.h.

◆ split [2/3]

int split ( const EST_String s,
EST_String  result[],
int  max,
const char *  seperator,
char  quote = 0 
)
friend

Split at a given separator.

Definition at line 609 of file EST_String.h.

◆ split [3/3]

int split ( const EST_String s,
EST_String  result[],
int  max,
EST_Regex seperator,
char  quote = 0 
)
friend

Split at each match of the regular expression.

Definition at line 613 of file EST_String.h.

◆ upcase

EST_String upcase ( const EST_String s)
friend

Convert to upper case.

Definition at line 967 of file EST_String.cc.

◆ downcase

EST_String downcase ( const EST_String s)
friend

Convert to lower case.

Definition at line 954 of file EST_String.cc.

◆ operator<<

ostream & operator<< ( ostream &  s,
const EST_String str 
)
friend

Stream output for EST_String.

Definition at line 1087 of file EST_String.cc.

Member Data Documentation

◆ version

const char * EST_String::version = "CSTR String Class " STRING_VERSION " " STRING_DATE
static

Global version string.

Definition at line 108 of file EST_String.h.

◆ Empty

const EST_String EST_String::Empty
static

Constant empty string.

Definition at line 111 of file EST_String.h.


The documentation for this class was generated from the following files: