// 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"(?:font)[\ ]+([A-Za-z0-9\=\:]+)[\}\ \}]").unwrap();
let string = "conky.config = {
-- ------------------------- Windows Settings
own_window = true,
own_window_type = 'normal',
own_window_transparent = false,
own_window_hints = 'undecorated,sticky,below,skip_taskbar,skip_pager',
own_window_argb_visual = true,
own_window_argb_value = 0,
double_buffer = true,
background = true,
-- ------------------------- Position
alignment = 'bottom_left',
minimum_width = 295,
minimum_height = 155,
maximum_width = 313,
gap_x = 1252,
gap_y = 155,
border_inner_margin = 0,
border_outer_margin = 0,
border_width = 0,
-- ------------------------- Font
use_xft = true,
xftalpha = 0.8,
override_utf8_locale = true,
draw_shades = true,
default_shade_color = 'black',
draw_borders = false,
draw_outline = false,
font = 'Monofur:bold:size=8',
-- ------------------------- Color
default_color = 'DCDCDC',
color0 = '1793d0',
color1 = 'DDDDDD',
color2 = 'AAAAAA',
color3 = '888888',
-- ------------------------- OTHER
update_interval = 1,
lua_load = '~/.conky/ConkyBar/lua/net_graph.lua',
lua_draw_hook_pre = 'main_graph',
};
conky.text = [[
${color DCDCDC}
${color DCDCDC }
${if_existing /proc/net/route enp8s0}${voffset 25}${goto 50}${font}Network${image ~/.conky/ConkyBar/img/networkhigh.png -p 0,15}
${goto 50}${font}Public ip: ${font Monofur:size=8}${texeci 36000 wget -qO - http://ip.tupeux.com | tail}
${voffset 81}${goto 50}${font}Recieve: ${font Monofur:size=8}${downspeed enp8s0}${goto 210}${font}Send: ${font Monofur:size=8}${upspeed enp8s0}${else}${if_existing /proc/net/route wlp2s0}${voffset 25}${goto 50}${font}Network
${goto 50}${font}Public ip: ${font Monofur:size=8}${texeci 36000 wget -qO - http://ip.tupeux.com | tail}${goto 210}${font}Sign: ${font Monofur:size=8}${wireless_link_qual_perc wlp2s0}%
${voffset 81}${goto 50}${font}Recieve: ${font Monofur:size=8}${downspeed wlp2s0}${goto 210}${font}Send: ${font Monofur:size=8}${upspeed wlp2s0}
${if_match \"${wireless_link_qual_perc wlp2s0}\"<\"33\"}${image ~/.conky/ConkyBar/img/networklow.png -p 0,15 -s 45x45}${else}${if_match \"${wireless_link_qual_perc wlp2s0}\"<\"66\"}${image ~/.conky/ConkyBar/img/networkmid.png -p 0,15}${else}${image ~/.conky/ConkyBar/img/networkhigh.png -p 0,15}${endif}${endif}${else}${voffset 27}${goto 50}${font}Network${image ~/.conky/ConkyBar/img/nonetwork.png -p 0,15}
${goto 50}No connection${endif}${endif}
]];";
// 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/