diff options
author | Andrew Gallant <jamslam@gmail.com> | 2016-12-30 16:24:09 -0500 |
---|---|---|
committer | Andrew Gallant <jamslam@gmail.com> | 2017-01-01 01:03:21 -0500 |
commit | 163e00677aaf7af8c32ec2cfd699e8d26bf8437c (patch) | |
tree | 32525bd68ec98d7ed1a87da2669d24823c9982c5 /src | |
parent | d58236fbdcd3708f63d6a2eb9836cf1389916788 (diff) |
Update to regex 0.2.
Diffstat (limited to 'src')
-rw-r--r-- | src/args.rs | 2 | ||||
-rw-r--r-- | src/printer.rs | 19 |
2 files changed, 13 insertions, 8 deletions
diff --git a/src/args.rs b/src/args.rs index 4048b119..9ce572ac 100644 --- a/src/args.rs +++ b/src/args.rs @@ -473,7 +473,7 @@ impl<'a> ArgMatches<'a> { /// unchanged. fn literal_pattern(&self, pat: String) -> String { if self.is_present("fixed-strings") { - regex::quote(&pat) + regex::escape(&pat) } else { pat } diff --git a/src/printer.rs b/src/printer.rs index 6b88ace5..96b0444b 100644 --- a/src/printer.rs +++ b/src/printer.rs @@ -210,15 +210,20 @@ impl<W: WriteColor> Printer<W> { let column = if self.column { Some(re.find(&buf[start..end]) - .map(|(s, _)| s).unwrap_or(0) as u64) + .map(|m| m.start()).unwrap_or(0) as u64) } else { None }; return self.write_match( re, path, buf, start, end, line_number, column); } - for (s, _) in re.find_iter(&buf[start..end]) { - let column = if self.column { Some(s as u64) } else { None }; + for m in re.find_iter(&buf[start..end]) { + let column = + if self.column { + Some(m.start() as u64) + } else { + None + }; self.write_match( re, path.as_ref(), buf, start, end, line_number, column); } @@ -265,12 +270,12 @@ impl<W: WriteColor> Printer<W> { return; } let mut last_written = 0; - for (s, e) in re.find_iter(buf) { - self.write(&buf[last_written..s]); + for m in re.find_iter(buf) { + self.write(&buf[last_written..m.start()]); let _ = self.wtr.set_color(self.colors.matched()); - self.write(&buf[s..e]); + self.write(&buf[m.start()..m.end()]); let _ = self.wtr.reset(); - last_written = e; + last_written = m.end(); } self.write(&buf[last_written..]); } |