mirror of https://github.com/python/cpython
Get rid of _expand() altogether - the match object supports m.expand().
This commit is contained in:
parent
403e351dfc
commit
f8c8cf8a9d
|
@ -6,7 +6,6 @@ from Tkinter import *
|
||||||
import tkMessageBox
|
import tkMessageBox
|
||||||
import SearchEngine
|
import SearchEngine
|
||||||
from SearchDialogBase import SearchDialogBase
|
from SearchDialogBase import SearchDialogBase
|
||||||
import sre_parse
|
|
||||||
|
|
||||||
def replace(text):
|
def replace(text):
|
||||||
root = text._root()
|
root = text._root()
|
||||||
|
@ -91,7 +90,7 @@ class ReplaceDialog(SearchDialogBase):
|
||||||
line, m = res
|
line, m = res
|
||||||
chars = text.get("%d.0" % line, "%d.0" % (line+1))
|
chars = text.get("%d.0" % line, "%d.0" % (line+1))
|
||||||
orig = m.group()
|
orig = m.group()
|
||||||
new = self._expand(m, repl)
|
new = m.expand(repl)
|
||||||
i, j = m.span()
|
i, j = m.span()
|
||||||
first = "%d.%d" % (line, i)
|
first = "%d.%d" % (line, i)
|
||||||
last = "%d.%d" % (line, j)
|
last = "%d.%d" % (line, j)
|
||||||
|
@ -143,7 +142,7 @@ class ReplaceDialog(SearchDialogBase):
|
||||||
m = prog.match(chars, col)
|
m = prog.match(chars, col)
|
||||||
if not prog:
|
if not prog:
|
||||||
return False
|
return False
|
||||||
new = self._expand(m, self.replvar.get())
|
new = m.expand(self.replvar.get())
|
||||||
text.mark_set("insert", first)
|
text.mark_set("insert", first)
|
||||||
text.undo_block_start()
|
text.undo_block_start()
|
||||||
if m.group():
|
if m.group():
|
||||||
|
@ -155,14 +154,6 @@ class ReplaceDialog(SearchDialogBase):
|
||||||
self.ok = 0
|
self.ok = 0
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def _expand(self, m, template):
|
|
||||||
# XXX This code depends on internals of the regular expression
|
|
||||||
# engine! There's no standard API to do a substitution when you
|
|
||||||
# have already found the match. One should be added.
|
|
||||||
# XXX This parses the template over and over...
|
|
||||||
ptemplate = sre_parse.parse_template(template, m.re)
|
|
||||||
return sre_parse.expand_template(ptemplate, m)
|
|
||||||
|
|
||||||
def show_hit(self, first, last):
|
def show_hit(self, first, last):
|
||||||
text = self.text
|
text = self.text
|
||||||
text.mark_set("insert", first)
|
text.mark_set("insert", first)
|
||||||
|
|
Loading…
Reference in New Issue