// include the latest version of the regex crate in your Cargo.toml
extern crate regex;
use regex::Regex;
fn main() {
let regex = Regex::new(r#"(?m)\s(?<key>[^=\s]+)="(?<value>(?:<[^<>]*>|[^"])*)"#).unwrap();
let string = "[2018-11-19T13:04:33.031+01:00] Bedrijfsdocument=\"BD-023005 Document\" Richting=\"Uitgaand\" Status=\"verzonden\"; Zaaknummer=\"2323343333\"; MessageID=\"ef5c6e9e-849e-4d80-af86-92fc127e7178\"; ConversationID=\"5571c03e-62a8-4fce-81ff-9fe31b7b276c\"; RefToMessageId=\"34333139343034303934303135343731\"; MMDBestand=\"2018-11-19_9bf1caf8-ca3d-43ae-b046-fa44142faa36_0_MMD.mmd\"; Bericht=\"<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><ns2:DocumentBericht BDVersie=\"2.1\" BDNaam=\"TA-022305\" xmlns:ns2=\"com.my.test/berichten/document/2\" xmlns=\"com.my.test/header/1\"><Header><ID>58b5708f-4115-462c-93f3-5fb5134c9e25</ID><VerzendendePartijen><VerzendendePartij><Volgnummer>1</Volgnummer><RegistratieveRelatiePartij><Identificatie>00000004000000034000_OTA</Identificatie><SoortRegistratie>15</SoortRegistratie></RegistratieveRelatiePartij></VerzendendePartij></VerzendendePartijen><OntvangendePartijen><OntvangendePartij><Volgnummer>1</Volgnummer><RegistratieveRelatiePartij><Identificatie>00000004000000076000_OTA</Identificatie><SoortRegistratie>15</SoortRegistratie></RegistratieveRelatiePartij></OntvangendePartij></OntvangendePartijen><Datum>2018-11-19</Datum><Tijd>13:04:32.952+01:00</Tijd><SchemaVersieID>1.1</SchemaVersieID></Header><ns2:Zaak><ns2:Identificatie>2100008418</ns2:Identificatie></ns2:Zaak><ns2:DocumentAggregatieniveaus><ns2:DocumentAggregatieniveau><ns2:Classificatie><ns2:DocumentSoort>098</ns2:DocumentSoort></ns2:Classificatie><ns2:Identificatiekenmerk>DOC006256</ns2:Identificatiekenmerk><ns2:Foldernaam>02 - Correspondentie</ns2:Foldernaam><ns2:Revisie>1</ns2:Revisie><ns2:IndicatieGewijzigdeMetadata>0</ns2:IndicatieGewijzigdeMetadata><ns2:Naam>02 - Toezenden stukken rm</ns2:Naam><ns2:Bijlage><ns2:MimeContent><ns2:MimeContentType>application/pdf</ns2:MimeContentType><ns2:MimeContentId>2018-11-19_9bf1caf8-ca3d-43ae-b046-fa44142faa36_2.pdf@my.com</ns2:MimeContentId></ns2:MimeContent></ns2:Bijlage></ns2:DocumentAggregatieniveau></ns2:DocumentAggregatieniveaus></ns2:DocumentBericht>\"; Omvang=\"3512\"
Bedrijfsdocument<=>BD-023005 Document
Richting<=>Uitgaand
Status<=>verzonden
Zaaknummer<=>2323343333
MessageID<=>ef5c6e9e-849e-4d80-af86-92fc127e7178
ConversationID<=>5571c03e-62a8-4fce-81ff-9fe31b7b276c
RefToMessageId<=>34333139343034303934303135343731
MMDBestand<=>2018-11-19_9bf1caf8-ca3d-43ae-b046-fa44142faa36_0_MMD.mmd
Bericht<=><?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\" .....
Omvang<=>3512";
// result will be an iterator over tuples containing the start and end indices for each match in the string
let result = regex.captures_iter(string);
for mat in result {
println!("{:?}", mat);
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Rust, please visit: https://docs.rs/regex/latest/regex/