MCPcopy Create free account
hub / github.com/SeleniumHQ/selenium / parse_version

Function parse_version

rust/src/files.rs:643–661  ·  view source on GitHub ↗
(version_text: String, log: &Logger)

Source from the content-addressed store, hash-verified

641}
642
643pub fn parse_version(version_text: String, log: &Logger) -> Result<String, Error> {
644 if version_text.to_ascii_lowercase().contains("error") {
645 log.debug(format!("Error parsing version: {}", version_text));
646 return Err(anyhow!(PARSE_ERROR));
647 }
648 let mut parsed_version = "".to_string();
649 let re_numbers_dots = Regex::new(r"[^\d^.]")?;
650 let re_versions = Regex::new(r"(?:(\d+)\.)?(?:(\d+)\.)?(?:(\d+)\.\d+)")?;
651 for token in version_text.split(' ') {
652 parsed_version = re_numbers_dots.replace_all(token, "").to_string();
653 if re_versions.is_match(parsed_version.as_str()) {
654 break;
655 }
656 }
657 if parsed_version.ends_with('.') {
658 parsed_version = parsed_version[0..parsed_version.len() - 1].to_string();
659 }
660 Ok(parsed_version)
661}
662
663pub fn path_to_string(path: &Path) -> String {
664 path.to_path_buf()

Calls 2

splitMethod · 0.80
debugMethod · 0.45