如何从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);
}
}