No, but with
^s (= selected text) or
^c (= clipboard content) you can do this. Example macro code:
NewFile
GetString "What do you want in here?"
Clipboard 9
SelectAll
Copy
EndSelect
CloseFile NoSave
ReplInFiles OutputWin "c:\temp\test\" "*.html" "home" "^c"
ClearClipboard
Clipboard 0
A small tutorial for ^s and ^c
^s and
^c cannot be used with a Unix or Perl regular expression. But it can be used with an UltraEdit style regex. But the text selected or in the clipboard (any of the 10 available clipboards - see above) will be handled as regular expression string and not as normal text.
For example the selected text
x+y expressed in the search string with
^s with UltraEdit style regex enabled and Match Case also enabled is interpreted as: find a string with 1 or more occurrences of x followed by y. So it will find xy, xxy, xxxy, ... and not x+y as you maybe would expect.
If you use
^s or
^c with a normal search (regular expression is not checked), it will be interpreted as "x+y". The text selected or in the clipboard is always interpreted as normal text in the replace string. Nevertheless,
^s and
^c can be also in the replace string not used in a Unix or Perl regex replace.
The text selected or in the clipboard can be also a block of lines. The 1000 characters size limit of the find/replace enter fields does not exist for a text selected or held in the clipboard.
I think, the 1000 characters limit is from the MS function
WriteProfileString and
GetProfileString which I think are used to save the find/replace strings in the find/replace history in the INI.
^s and
^c need only 2 bytes in the find/replace history.
Interesting things can be done with these two special characters. For example you have a macro like that:
IfSel
Find MatchCase "^s"
Replace "<a href="^s">^s</a>"
EndIf
This is like the following code:
IfSel
InsertMode
Clipboard 9
Cut
"<a href=""
Paste
"">"
Paste
"</a>"
Clipboard 0
EndIf
But the first macro with the single replace has some advantages:
a) It does not need a clipboard, so your current clipboard is not changed by the macro.
b) It is independent of insert or overstrike mode. So your current edit mode is not changed (if not hex mode).
c) It's a single replace, so it produces only 1 undo step.
Well, I use for this "Make URL" code a template with the template code:
<a href="[$replace$]">[$replace$]</a>
Templates can be used easier than macros and you can use templates also within a macro.
Update: ^c and
^s support Unicode characters not available in system code page since UltraEdit for Windows v24.00 and UEStudio v17.00 which means full Unicode support by
^c and
^s.