StringHelpers in CPP
Du bist hier : | {{#youAreHere:StringHelpers in CPP}} |
String Helper in C++
Oft fehlt in der Stringklasse in C++ genau die Methode, die man braucht.
Aus der Praxis heraus sind einige Methoden entstanden, die ich für nützlich halte.
überabeitet am 09.02.2014
Download: github: stringhelper
Autor
Richard Albrecht
Lizenz
LGPL
GNU Lesser General Public License
Tests
Im Folder test sind einige Unit-Tests mit Qt enthalten (Qt muss installiert sein).
Projektfiles
strings.pro für eine Qt Entwicklungs-Umgebung mit qmake ist dabei. Es ist kein sinnvolles Main dabei, weil es die Tests gibt.
test/teststrhlp.pro für eine Qt Entwicklungs-Umgebung mit qmake ist dabei. Qt wird verwendet. Die Tests können beliebig erweitert werden.
Compiler
gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
Methoden
In 'main.cpp' sind 2 Methoden mit Tests enthalten.
int main( void ) {
test_hstring::test1();
test_hstring::test2();
return 0;
}
Tests
folgende Tests sind in 'test_hstring.cpp' enthalten:
class TestStrings {
public:
void test_string_to_type_double();
void test_string_to_type_int();
void test_string_to_type_size_t();
void test_double_to_string_default_format();
void test_double_to_string_format_supplied();
void test_negative_int_to_string();
void test_int_to_hex_0x();
void test_int_to_hex_0x_32bit();
void test_int_to_hex_0x_example2();
void test_int_to_hex_0x_width16();
void test_int_to_hex();
void test_int_to_binaer_string();
void test_int_to_binaer_string_width16();
void test_to_lower_in_place();
void test_to_lower_copy_string();
void test_to_upper_in_place();
void test_to_upper_copy_string();
void test_clip_before_pattern();
void test_clip_after_pattern();
void test_clip_at_pos();
void test_clip_at_char();
void test_truncate_at_pos();
void test_trim();
void test_trim_right();
void test_trim_left();
void test_trim_with_empty_string();
void test_index_at_char();
void test_index_at_pattern();
void test_index_right_at_char();
void test_index_at_pattern_from_pos();
void test_index_right_at_pattern();
void test_index_not_found();
void test_replace_first();
void test_replace_all();
void test_fillup();
void test_last_char();
void test_first_char();
void test_erase();
void test_erase_in_place();
void test_remove_last();
void test_remove_last_in_place();
void test_remove_first();
void test_remove_first_pattern();
void test_insert_at_char();
void test_insert_at_pattern();
void test_split_to_6_tokens();
void test_split_to_3_tokens();
void test_split_with_multiple_delimiters();
};
für den Debugger
Im File 'test1();' in 'main.cpp' kann man mit dem Debugger durchgehen und sich das Verhalten der Methoden anschauen.
Im Source sind die Stellen mit 'int debug_i = 0;' für Breakpoints vorgesehen.