如何从rust中的regex::Match中提取数据

如何从rust中的regex::Match中提取数据,rust,Rust,有没有办法从regex::Match中获取数据?这是我的密码: 用于行内数组的{ 设mat=re.find(线); 如果!mat.is_none(){ println!(“{:?}”,mat.unwrap()); } } 现在它打印: Match{text:“SomeDateHere”,开始:5,结束:19} 如何从这里获取数据?您可以通过调用以下命令从regex::Match中获取文本: if let Some(mat)=重新查找(行){ println!(“{}”,mat.as_str(

有没有办法从
regex::Match
中获取数据?这是我的密码:

用于行内数组的
{
设mat=re.find(线);
如果!mat.is_none(){
println!(“{:?}”,mat.unwrap());
}
}
现在它打印:

Match{text:“SomeDateHere”,开始:5,结束:19}

如何从这里获取数据?

您可以通过调用以下命令从
regex::Match
中获取文本:

if let Some(mat)=重新查找(行){
println!(“{}”,mat.as_str())
}

所以,谢谢@Aplet123和@Ibraheem Ahmed,基本上我真正想要的是有一场比赛的台词
.as_str()
返回匹配的文本,这不是我真正想要的

我让它工作了:)

让args:Vec=env::args().collect(); 让re=Regex::new(r“(BODY\sContent[:])”).unwrap()

因此@Aplet123
.as_str()
只返回行中匹配的文本。我想把比赛的整条线都退出来。有办法吗?
let filename = parse_config(&args);

let log_string = read_log_file(filename);

let line_array = parse_to_array(&log_string);

for line in line_array {
    if let Some(_) = re.find(line) {
        println!("matched line: {}", line);
    }
}