1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
# comma
[](https://crates.io/crates/comma)
[](https://docs.rs/comma)
[](https://travis-ci.org/emctague/comma)
`comma` splits shell-style commands, e.g. `sendmsg joe "I say \"hi\" to you!"`, into a list of individual tokens.
It correctly handles unicode characters, escape sequences, and single- or double-quoted strings.
## Cargo
```toml
[dependencies]
comma = "1.0.0"
```
## Usage
```rust
use comma::parse_command;
fn main () {
let parsed = parse_command("sendmsg joe \"I say \\\"hi\\\" to you!\" 'but only\\ntoday'").unwrap();
println!("Result: {:#?}", parsed); // Result: [ "sendmsg", "joe", "I say \"hi\" to you!", "but only\ntoday" ]
}
```
|