gpt4 book ai didi

rust - 使用Rust的 crate 正则表达式,如何获取组的职位?

转载 作者:行者123 更新时间:2023-12-03 11:41:33 27 4
gpt4 key购买 nike

请让我知道如何使用Rust的 crate 正则表达式获取匹配组的位置。
我发现如何将正则表达式与文本进行匹配,如下所示。

extern crate regex;
use regex::Regex;

fn main() {
let str = "ABC 01 D2E";

let re = Regex::new(r"(\s)(\d+)(\s)").unwrap();
let caps = re.captures(str).unwrap();
println!("{}", caps.get(2).unwrap().as_str()); // I expect "01" on stdout.
}
虽然,我仍然不知道(如何获得)“01”在文本上的位置。即,“ABC 01 D2E”上的索引“0”。

最佳答案

Captures::get返回一个Option<Match>>,因此您可以使用 Match::start 获取起始索引:

println!("{}", caps.get(2).unwrap().start());
// prints 4

关于rust - 使用Rust的 crate 正则表达式,如何获取组的职位?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64698079/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com