Expand description
§Module :: strs_tools
Tools to manipulate strings.
§Basic use-case
#[ cfg( all( feature = "string_split", not( feature = "no_std" ) ) ) ]
{
/* delimeter exists */
let src = "abc def";
let iter = strs_tools::string::split()
.src( src )
.delimeter( " " )
.stripping( false )
.perform();
let iterated = iter.map( | e | String::from( e.string ) ).collect::< Vec< _ > >();
assert_eq!( iterated, vec![ "abc", " ", "def" ] );
/* delimeter not exists */
let src = "abc def";
let iter = strs_tools::string::split()
.src( src )
.delimeter( "g" )
.perform();
let iterated = iter.map( | e | String::from( e.string ) ).collect::< Vec< _ > >();
assert_eq!( iterated, vec![ "abc def" ] );
}
§To add to your project
cargo add strs_tools
§Features
This crate uses a feature-based system to allow you to include only the functionality you need. Key features include:
string_indentation
: Tools for adding indentation to lines of text.string_isolate
: Functions to isolate parts of a string based on delimiters.string_parse_request
: Utilities for parsing command-like strings with subjects and key-value parameters.string_parse_number
: Functions for parsing numerical values from strings.string_split
: Advanced string splitting capabilities with various options for delimiters, quoting, and segment preservation.
You can enable features in your Cargo.toml
file, for example:
[dependencies.strs_tools]
version = "0.18.0" # Or your desired version
features = [ "string_split", "string_indentation" ]
The default
feature enables a common set of functionalities. The full
feature enables all available string utilities. Refer to the Cargo.toml
for a complete list of features and their dependencies.
§Try out from the repository
git clone https://github.com/Wandalen/wTools
cd wTools/module/core/strs_tools
cargo run --example strs_tools_trivial