22 releases (breaking)

0.18.0 Oct 30, 2024
0.16.0 Aug 16, 2024
0.15.0 Jun 29, 2024
0.11.0 Mar 26, 2024
0.1.8 Jul 15, 2022

#2935 in Algorithms

Download history 26/week @ 2024-11-13 31/week @ 2024-11-20 43/week @ 2024-11-27 76/week @ 2024-12-04 54/week @ 2024-12-11 15/week @ 2024-12-18 8/week @ 2025-01-01 31/week @ 2025-01-08 20/week @ 2025-01-15 20/week @ 2025-01-22 4/week @ 2025-01-29 62/week @ 2025-02-05 105/week @ 2025-02-12 168/week @ 2025-02-19 123/week @ 2025-02-26

459 downloads per month
Used in 10 crates (4 directly)

MIT license

115KB
1.5K SLoC

Module :: strs_tools

experimental rust-status docs.rs Open in Gitpod discord

Tools to manipulate strings.

Basic use-case

#[ cfg( all( feature = "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 ) ).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 ) ).collect::< Vec< _ > >();
  assert_eq!( iterated, vec![ "abc def" ] );
}

To add to your project

cargo add strs_tools

Try out from the repository

git clone https://github.com/Wandalen/wTools
cd wTools
cd examples/wstring_tools_trivial
cargo run

Sample

discord Open in Gitpod docs.rs

Dependencies

~1.5–2.1MB
~41K SLoC