let tesc: String;
let desc: String;
+ let mut nvalue = String::from(value);
+
let mut sregex = String::from("^");
if self.plus_minus {
} else {
tesc = format!("{}", t);
}
+
+ nvalue = str::replace(&nvalue, t, "");
},
None => { tesc = String::new(); },
}
} else {
desc = format!("{}", t);
}
+
+ nvalue = str::replace(&nvalue, t, ".");
},
None => { desc = String::new(); },
}
tesc,
desc,
desc).as_str());
- println!("REGEX {} - {}", sregex, value);
+
let re = Regex::new(&sregex).unwrap();
if !re.is_match(value) {
return self.get_message();
}
+ let fvalue = match nvalue.parse::<f64>() {
+ Ok(f) => { f },
+ Err(_) => { 0_f64 },
+ };
+
+ match &self.compare_type {
+ Some(t) => {
+ match t {
+ ValidatorNumberCompareType::Less => {
+ if fvalue >= self.compare_value {
+ return self.get_message();
+ }
+ },
+ ValidatorNumberCompareType::LessEq => {
+ if fvalue > self.compare_value {
+ return self.get_message();
+ }
+ },
+ ValidatorNumberCompareType::Eq => {
+ if fvalue != self.compare_value {
+ return self.get_message();
+ }
+ },
+ ValidatorNumberCompareType::Great => {
+ if fvalue <= self.compare_value {
+ return self.get_message();
+ }
+ },
+ ValidatorNumberCompareType::GreatEq => {
+ if fvalue < self.compare_value {
+ return self.get_message();
+ }
+ },
+ };
+ },
+ None => { },
+ };
+
return String::from("");
}
}