// 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)(?i)\[\[(?<firstlevelfolder>(?:assets|Bücher|Dokument|epsilon_notes|kontakte|literatur|Projekt|Test|Wissen|WV)(?:[\w_]*)\/)(?<bildpfad>[^\|\\\]]+)(\\\||\|)*(?<bildattribut>[^\]]*)\]\]").unwrap();
let string = "Link zum Bild:
![[Projekte/Mikroskop/_resources/f04ae6b6a924e20e761dce25603b3bd8.jpg]]
![[assets/(15) Bigger Arms Workout (Dumbbells Only) - YouTube - 3 34.jpeg]]
![[subfolder/image.png|100x100]]
![[subfolder/sub2/image.png|100x100]]
![[../../ima/ge.png|100x100]]
[[Dokumente/Gesundheit/Dave/_Dave_overview]]
![[Projekte/image.png|100x100]]
![[Projekte_irgendwas/image.Png|100x100]]
[[assets/MiSZ 2T.pdf]]
[[assets2/MiSZ 2T.pdf]]
![[Projekte/Mikroskop/Leica, Wild/Product Guide for Stereomicroscopes. Living up to Life.pdf]]
![[BA_GSZ 2_GSZ 2T.pdf#page=7]]
![[BA_GSZ 2_GSZ 2T.pdf]]
Beispiel-tabelle:
Caption1 | Caption2 |
---|---|
Content1 text | Link innerhalb Tabelle mit Attributen
![[Projekte/Mikroskop/_resources/f04ae6b6a924e20e761dce25603b3bd8.jpg\\|300]] |
vorerst letzte Zeile | Text Text Text |
![[Projekte/Mikroskop/_resources/f04ae6b6a924e20e761dce25603b3bd8.jpg\\|200]]";
let substitution = "[<span style=\"color:blue\">CPLinkToFile: </span> <span style=\"background-color: #caecff; color:blue\">**${firstlevelfolder}${bildpfad}**</span>](/storage/emulated/0/onedrive/obsidian/${firstlevelfolder}${bildpfad})";
// result will be a String with the substituted value
let result = regex.replace_all(string, substitution);
println!("{}", result);
}
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/