Page 1 of 1
Replace only within special part of each file
Posted: Wed Jun 08, 2005 7:55 pm
I have used AFR for a while, but I am stumped on this one. I have problem. I have a large number of files, often several thousans of them, where I need to replace a random string inside to code. Where the string is can ve figured out by the text before and after it, but what then need to do is replace spaces " " with dashes "-". Assume that the code is
Code: Select all
<!--#include virtual="/sub/search and save.asp" -->
The "search and save" part is randone and will not repeat itself in the files at all. So what I need to do is first find the string between "#include virtual="/sub/" and ".asp" -->" and then do a replace
on the spaces and turn them into dashes.
Ii this possible? I figured if any app I have ever seen can, this is the one.
Posted: Wed Jun 08, 2005 8:44 pm
You are right it's possible to do with AFR.
Read the similar case
Start the program. Go to main menu - Action - Options - "Batch
replace" check on the options:
Replace until found is ON
Modifier S is OFF.
Modifier G is OFF.
check ON: "Replace until found".
In main window go to Batch replace tab.
Check on "Use regular expressions".
Then fill the grid:
#include virtual="/sub/(.+) (.+)\.asp
That's all. You may press now Execute button.
I verified it perfectly works. The program produced the resulting text
But it your case I would also include <!-- --> into search scope
so the final pair should be:
(<!--.*#include virtual="/sub/.+) (.+\.asp.*-->)
I verified it worked too.
Posted: Thu Jun 09, 2005 1:16 am
ok I will toss in another thing to make it worse. on top of everything the number of words in my search string varies from 2 to maybe 5. I need to be flexible and still get "-" between each word.
Sorry I forgot to tell you before.
Posted: Thu Jun 09, 2005 11:20 am
Number of words is not a problem. There are maybe any number of words.
Modifier S in OFF position means that these words should be on one
line (for one URL).
But I should add a small correction here, you said you need to insert "-" (minus
sign). But I thought you need to insert underscore "_".
So in my previous examples use "-" instead of "_".
1st example Replace with:
2nd example Replace with:
Please try it. Does it work?
Posted: Thu Jun 09, 2005 11:23 pm
Sorry to drag this out, but I don't have (or can't find) the "Replace until found" option anywhere. I am using version 2.0. Actually I updated with the new version per your email but it never changed the version in the "about" section. WHat am I missing?
Posted: Fri Jun 10, 2005 12:01 pm
Yes, this options "Replace until found" appears only since v2.3.
Try the following:
Download the latest version of the program:
This is only updated EXE file. You need to extract executable file from
zip archive into folder where the program is installed. So you will
replace old executable file by this new one.
Posted: Fri Jun 10, 2005 9:55 pm
Perfect. I love this tool
Many thanks Roman.