Skip to content

Commit 45b6739

Browse files
committed
Merge pull request #80 from nathanfaucett/patch-1
replace strings index fix
2 parents 93f3798 + 4c423b1 commit 45b6739

File tree

2 files changed

+3
-1
lines changed

2 files changed

+3
-1
lines changed

regex_macros/tests/tests.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,8 @@ replace!(rep_all, replace_all, r"\d", "age: 26", "Z", "age: ZZ");
189189
replace!(rep_groups, replace, r"(\S+)\s+(\S+)", "w1 w2", "$2 $1", "w2 w1");
190190
replace!(rep_double_dollar, replace,
191191
r"(\S+)\s+(\S+)", "w1 w2", "$2 $$1", "w2 $1");
192+
replace!(rep_adjacent_index, replace,
193+
r"([^aeiouy])ies$", "skies", "$1y", "sky");
192194
replace!(rep_no_expand, replace,
193195
r"(\S+)\s+(\S+)", "w1 w2", NoExpand("$2 $1"), "$2 $1");
194196
replace!(rep_named, replace_all,

src/re.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -780,7 +780,7 @@ impl<'t> Captures<'t> {
780780
pub fn expand(&self, text: &str) -> String {
781781
// How evil can you get?
782782
// FIXME: Don't use regexes for this. It's completely unnecessary.
783-
let re = Regex::new(r"(^|[^$]|\b)\$(\w+)").unwrap();
783+
let re = Regex::new(r"(^|[^$]|\b)\$(\d+|\w+)").unwrap();
784784
let text = re.replace_all(text, |refs: &Captures| -> String {
785785
let pre = refs.at(1).unwrap_or("");
786786
let name = refs.at(2).unwrap_or("");

0 commit comments

Comments
 (0)