// 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#"(?mis)<a[^>]*href="(?<url>[^"]*(?<=\?|&)o=(?<number>\d+)[^"]*)"[^>]*>\s*last"#).unwrap();
let string = "<div class=\"listing_thumbs_resultcontainer\">
<span class=\"FloatLeft nav-next-btn\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=1&q=nike air&th=1\" title=\"Go to first page\">« First</a>
<span class=\"nav-next-btn nohistory marginLeft\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=18&q=nike air&th=1\" title=\"Go to previous page\">
‹ Previous
</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=1&q=nike air&th=1\" title=\"Page 1 of 29\">1</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=2&q=nike air&th=1\" title=\"Page 2 of 29\">2</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=3&q=nike air&th=1\" title=\"Page 3 of 29\">3</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=4&q=nike air&th=1\" title=\"Page 4 of 29\">4</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=5&q=nike air&th=1\" title=\"Page 5 of 29\">5</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=6&q=nike air&th=1\" title=\"Page 6 of 29\">6</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=7&q=nike air&th=1\" title=\"Page 7 of 29\">7</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=8&q=nike air&th=1\" title=\"Page 8 of 29\">8</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=9&q=nike air&th=1\" title=\"Page 9 of 29\">9</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=10&q=nike air&th=1\" title=\"Page 10 of 29\">10</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=11&q=nike air&th=1\" title=\"Page 11 of 29\">11</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=12&q=nike air&th=1\" title=\"Page 12 of 29\">12</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=13&q=nike air&th=1\" title=\"Page 13 of 29\">13</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=14&q=nike air&th=1\" title=\"Page 14 of 29\">14</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=15&q=nike air&th=1\" title=\"Page 15 of 29\">15</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=16&q=nike air&th=1\" title=\"Page 16 of 29\">16</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=17&q=nike air&th=1\" title=\"Page 17 of 29\">17</a>
</span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=18&q=nike air&th=1\" title=\"Page 18 of 29\">18</a>
</span>
<span class=\"nav-active\"><strong>19</strong></span>
<span class=\"non-active nohistory\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=20&q=nike air&th=1\" title=\"Page 20 of 29\">20</a>
</span
</span>
<span class=\"nav-next-btn nohistory FloatRight\">
<span class=\"nav-next-btn nohistory marginRight\">
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=20&q=nike air&th=1\" title=\"Go to next page\">
Next ›
</a>
</span>
<a href=\"http://www.mudah.my/Malaysia/nike+air-for-sale?o=29&q=nike air&th=1\" title=\"Go to last page\">
Last »
</a>
</span>
</div>";
// 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/