scsl  1.1.1
Shimmering Clarity Standard Library
StringUtil.h
Go to the documentation of this file.
1 
23 
24 #include <algorithm>
25 #include <string>
26 #include <vector>
27 
28 
29 #ifndef STRINGUTIL_H
30 #define STRINGUTIL_H
31 
32 
33 namespace scsl {
34 
36 namespace scstring {
37 
38 
41 void TrimLeadingWhitespace(std::string &s);
42 
45 void TrimTrailingWhitespace(std::string &s);
46 
49 void TrimWhitespace(std::string &s);
50 
53 std::string TrimLeadingWhitespaceDup(std::string s);
54 
57 std::string TrimTrailingWhitespaceDup(std::string s);
58 
61 std::string TrimWhitespaceDup(std::string s);
62 
63 
71 std::vector<std::string> SplitKeyValuePair(std::string line, std::string delimiter);
72 
80 std::vector<std::string> SplitKeyValuePair(std::string line, char delimiter);
81 
89 std::vector<std::string> SplitN(std::string s, std::string delimiter, size_t maxCount=0);
90 
94 std::vector<std::string> WrapText(std::string& line, size_t lineLength);
95 
102 void WriteTabIndented(std::ostream &os, std::vector<std::string> lines,
103  int tabStop, bool indentFirst);
104 
112 void WriteTabIndented(std::ostream &os, std::string line, size_t maxLength,
113  int tabStop, bool indentFirst);
114 
115 
118 std::ostream &VectorToString(std::ostream &os, const std::vector<std::string> &svec);
119 
122 std::string VectorToString(const std::vector<std::string> &svec);
123 
124 
125 } // namespace string
126 } // namespace scsl
127 
128 
129 #endif // STRINGUTIL_H
130 
131 
std::string TrimLeadingWhitespaceDup(std::string s)
void TrimTrailingWhitespace(std::string &s)
std::string TrimTrailingWhitespaceDup(std::string s)
void TrimLeadingWhitespace(std::string &s)
void WriteTabIndented(std::ostream &os, std::vector< std::string > lines, int tabStop, bool indentFirst)
void TrimWhitespace(std::string &s)
std::ostream & VectorToString(std::ostream &os, const std::vector< std::string > &svec)
std::vector< std::string > WrapText(std::string &line, size_t lineLength)
std::vector< std::string > SplitN(std::string s, std::string delimiter, size_t maxCount=0)
std::vector< std::string > SplitKeyValuePair(std::string line, std::string delimiter)
std::string TrimWhitespaceDup(std::string s)
scsl is the top-level namespace containing all the code in this library.
Definition: scsl.h:43