| Home | Basic/Intermediate version | Advanced version | Super Advanced version |
This tutorial assumes the following:
1. That extensions for known file types are not hidden. (1. Click Start / My Documents. 2. Click Tools / Folder Options…. 3. Click the View tab. 4. Make sure that Hide extensions for known file types is unchecked.)
2. That you have installed Perl according to the tutorial at:
http://llbest.com/PerlProgramming.htm.
On this web page:
A. Introduction
B. Get the Free Download
C. Main Features
D. Example
E. The Header Line
F. How To Eliminate the Drag and Drop
G. Conclusion
This web page is a tutorial on how to use a free Perl program to do search and replace operations on an advanced level of complexity. This Perl program, in the form of a .bat file, never has to be changed. It is exactly the same Perl program which is used for the THIS WEB PAGE URL: http://llbest.com/_SandR_2_Advanced.htm | basic/intermediate version and the super advanced version. All of the instructions on how to do the search and replace operation(s) are contained in a separate .perlcode file, which is to be dragged and dropped onto the .bat file.
The free download (_SandR_2_Advanced.zip) contains the following 3 files:
1. Download now (2.20 KB).
2. Unzip _SandR_2_Advanced.zip to a folder called _SandR_2_Advanced.
1. Multiple files can be changed in one fell swoop.
2. These files can be a mixture of ANSI and UTF-8.
3. Optionally, files in subfolders may also be included.
4. A Perl code (.perlcode) file controls all of the changes.
5. The Perl code file can be either ANSI or UTF-8.
6. Changed ANSI files are automatically converted to UTF-8 format if the Perl code file is UTF-8.
7. Changed and unchanged files can be easily separated by sorting by “Date Modified.” (Unchanged files are not rewritten.)
8. A log file is created which lists how many changes were made to each file.
9. Optionally, Preview Mode can be used to do a find or to “go through the motions” without actually making any changes to any files.
Suppose, for the purpose of search engine compatibility, you want to remove the diacritics from some foreign words that are contained in a large mixture of
.htm and .html files. The web pages may contain one or more of the following diacritic characters: á, é, í, ó, ú, and/or ý.
Here’s how to do it:
1. Drag and drop the _SandR_2_Advanced.perlcode file’s icon onto the Notepad icon. Then you will see the following:
Note: # at the beginning of a line indicates that the line is a comment, so the Perl compiler simply ignoes it.
Note: The $buffer=~s/(.)/… line of regular expression Perl code above is fairly complex. Hence the term: “advanced.” See if you can figure it out using http://perldoc.perl.org/perlreref.html and http://perldoc.perl.org/index-functions.html.
By the way, $fileNameMask='\.(htm|html)$'; could be shortened to $fileNameMask='\.html?$';.
Here is what _SandR_2_Advanced.test looks like, enlarged to clearly show the 3 diacritics:
<html>
2. Drag and drop the _SandR_2_Advanced.perlcode file’s icon onto the __SandR_DragAndDropPerlCodeOnMe.bat file’s icon. Then you should see the following:
2 new files are created:
_SandR_2_Advanced.test was copied to _SandR_2_Advanced.htm and then the search and replace operation was performed, removing the diacritics:
<html>
Here is what the .log file looks like:
Each .perlcode file may have an optional header line. The header line, if it is included, must begin with ###.
The header line may contain any one, two, three or all four of the following:
1. A file name mask such as $FileNameMask='\.htm$';. ($FileNameMask='\.txt$'; is the default)
2. Either $previewMode=0; (Default: No preview mode) or $previewMode=1; (Preview mode: Do not actually make any changes.)
3. Either $doTheSubdirs=0; (Default: Do not include subfolders) or $doTheSubdirs=1; (Include subfolders.)
Here's a way to eliminate the need to drag and drop the .perlcode file onto the __SandR_DragAndDropPerlCodeOnMe.bat file. Instead, you can simply double click the .perlcode file:
1. Move the __SandR_DragAndDropPerlCodeOnMe.bat file to a common area such as C:\DOSSTUFF.
2. Right click on the .perlcode file, and select Open with/Choose default program....
3. Click the Browse... button.
4. Navigate to and double click the C:\DOSSTUFF\__SandR_DragAndDropPerlCodeOnMe.bat file.
5. Make sure that the “Always use the selected program to open this kind of file” checkbox is checked.
6. Click the OK button.
Now you are ready to perform multiple search and replace operations on any number of files:
1. Be sure to keep backup copies of all of the files until you are sure that the search and replace operations were done correctly.
2. Copy the files to be edited to a temporary folder such as C:\Temp2.
3. Copy __SandR_DragAndDropPerlCodeOnMe.bat and _SandR_2_Advanced.perlcode to the same folder.
4. Comment out the $buffer=~s/… line of the _SandR_2_Advanced.perlcode file. Then add your own particular search and replace operation line(s).
5. If appropriate, change (htm|html) to file name extensions that match the particular files that you wish to change.
6. Drag and drop the _SandR_2_Advanced.perlcode file’s icon onto the __SandR_DragAndDropPerlCodeOnMe.bat file’s icon, and if all goes according to plan, all of the files will now be edited automatically!
| Home | THIS WEB PAGE URL: http://llbest.com/_SandR_2_Advanced.htm | Basic/Intermediate version | Advanced version | Super Advanced version |
A. Introduction
B. Get the Free Download
C. Main Features:
D. Example:
<head>
</head>
<body>
<p>
První
<p>
Druhý
<p>
Tretí</p>
</body>
</html>
<head>
</head>
<body>
<p>
Prvni
<p>
Druhy
<p>
Treti</p>
</body>
</html>
Note: The lines of Perl code in the _SandR_2_Advanced.perlcode file contains what are called Regular Expressions. For more examples of search / replacement string syntax using Regular Expressions, see http://llbest.com/RegularExpressions.htm.
For a tutorial on Perl regular expressions, see http://perldoc.perl.org/perlretut.html. For a reference, see http://perldoc.perl.org/perlreref.html.
E. The Header Line
F. How To Eliminate the Drag and Drop
G. Conclusion