Fast File Renamer Plus is an independently produced and enhanced version of an original program by Freebyte Software. Full recognition is hereby given to Freebyte for the base concept. All code and functionality enhancements in Fast File Renamer Plus are original. No installation is required. Simply copy the executable to a convenient folder. Fast File Renamer Plus is written in Microsoft Visual Basic.
Base functions:
Enhancements:
Files to be renamed are dragged or loaded into the main File List. The rename actions are applied using the tabs below the file list. The Simulate button can be used to test multiple rename operations before applying changes to the files. Up to 30 levels of simulation can be tested with undo.
Fast File Renamer Plus has many features to make bulk file renaming easier. Apart from versatile search and replace functions including transpositions and mp3 tags, line numbers can be inserted at the start of the filename and dates or random numbers inserted at the start of end of the filename, along with the ability to reformat and reposition dates and a number of options to change case. These features make it easy to apply your preferred naming conventions to media files or document files.
Fast File Renamer Plus has a variety of options to streamline file renaming tasks, accessed from the tabs below the File List.
Populate the File List by dragging and dropping files from any open folder. When the "Drag and Drop Files From Folders" checkbox is unchecked, folder names can also dragged and dropped for renaming. When checked, all files in the folder are added instead. When "Include all sub folders in Drag and Drop" is checked in settings, all files in all subfolders will also be added. Files can also be added using the "Add Files" button or via the Menu using a standard File Open dialog. In addition, files and folders can be dropped onto the program icon on the Windows Desktop. Fast File Renamer will launch with the File List already populated. Files can be removed from the list by right clicking and selecting "Remove file from list".
The Files appear in the File List in the order added. The List can be sorted using the Sort Menu or by clicking on the list headers. If the "Select" checkbox is checked, files can also be reordered by selecting one or more files and moving them up and down the list using the buttons in the right bottom corner of the File List or by using the Alt-Up or Alt-Down keys. The Up and Down buttons will repeat if enabled in Settings. If the order is changed or files subsequently removed, the List can be renumbered from the Sort Menu. Complete all sorting and reordering before commencing filename changes.
Renaming operations apply to all files in the File List unless the "Select" checkbox is checked. This then allows a subset of files to be selected using click and drag in the File List and/or Ctrl and click to select separate files. The "All" button selects all files, "Invert" swaps selections and "None" clears all selections.
To rename files, select one of the Tabs and enter the appropriate information. Right click on a filename to load file information to the tab or to view file attributes. The specific features of each tab are described in the respective Help section. Only the active tab effects changes to the filename. If enabled in settings, Filenames can also be edited directly.
The checkboxes to the side of the Tabs can be selected to modify operation, then test the outcome using the Simulate button. Successive simulations can be tested or Undone, using any combination of the tabs or direct edits, until the new filenames reach the desired state.
Common file renaming tasks can usually be accomplished with combinations of rename, remove and insert operations, built up with multiple simulations. For more complex tasks like transpositions, Regular Expressions can be used from the Rename tab. See the other Help sections for more information, including how to perform renames based on traditional DOS wildcards.
To make individual edits to a filename, ensure filename edit is enabled in settings, then click the Edit button on the main screen to activate. The button will change colour to indicate Edit is active. Double click the desired filename in the list and make the required changes. Press the Enter key to accept the changes or Esc to abort. Each accepted edit will count as a new simulation, allowing changes to be undone. If a simulation results in two or more files having the same name, a warning will be displayed.
When ready, select Do Rename to commit the changes to the real files. If duplicate filenames are found, a warning message will be displayed and the changes aborted. The Undo Rename feature, accessed from the Action Menu, can be used to restore the original filenames, unless you make further changes.
Use the [~] button in the top right corner of the tab to reset all options in the tab to their default states.
When the "Ignore Case" checkbox is checked, case will be ignored when the original text or search pattern is applied. Otherwise, the search is case sensitive.
When the "First Occurrence" button is checked, the first occurrence only of the original text in the filename will be replaced by the new text. When the "Last Occurrence" button is checked, only the last occurrence will be replaced. When the "All Occurrences" button is checked, all occurrences will be replaced. These buttons do not apply to regex searches. The "Protect File Extension" checkbox limits changes to the main filename and prevents any changes to the file extension.
File lists can be printed or saved to file. There are a number of options to configure the format of the printed or saved lists and lists can be saved as plain text, comma delimited text or html. There are also options to configure lists containing mp3 files including the ability to add song lengths.
The Fast File Renamer Plus window is resizable and the preferred size can be saved in Settings. When the window is resized, the Filename and Path columns will also expand or contract to match. The width of these columns can also be changed by moving the cursor to the border between the columns then dragging the column in or out. A horizontal scrollbar will appear at the bottom of the file list as required. Click the [~] button at the far right of the column headings to force the columns to fit and remove the scrollbar. Double click the blank area at the bottom right of the main window to reset the window to the default size.
The Row Height of the File List can be changed using the [+] and [–] buttons on the right side of the list. These buttons will repeat if enabled in Settings. The current height value is displayed between the two buttons and can be enabled and saved in Settings. Double click the height value to reset to the default value.
Three buttons on the right side of the File List labeled [L], [M] and [S] allow the font size of the file list to be set to large, medium or small respectively. The default size is small. The preferred size is saved in Settings.
The Replace tab provides a number of operations to replace text in the filename as described below.
Replace Text by Find and Replace
The Replace tab allows text in the existing filename specified in "Find Text" to be replaced with new
text specified in "Replace Text". This is a straight text replacement without wildcards or other
interpretation. Right click any file in the File List and select "Use Filename as Find Text" from the
context menu to copy the filename to the Find text . The file attributes can also be viewed in the
context menu.
Replace Text using preset text lists
In addition, this tab allows text in the existing filename specified in a list of preset text strings
to be substituted with corresponding text. This quickly allows a range of predetermined words to be
altered or abbreviated in a single operation. Click the "Substitute" checkbox to enable preset
substitution. The words to be processed are specified in the Substitute Tab in Settings.
Replace Unicode Characters
When the "Unicode" checkbox is enabled, unicode characters specified in the Unicode List are replaced
with the corresponding plain ANSI character. The default list includes a range of hyphens, quotes and
other symbols. The Uncode list can be managed in the Unicode tab in Settings.
Replace Bracket Characters
When the "Bracket" checkbox is enabled, opening and closing brackets can be easily replaced using the
characters selected by the corresponding radio buttons.
Reformat and reposition Dates using Templates
This tab also allows date information in the filename to be reformatted and repositioned based on
templates. Check the "Reformat Date" checkbox and enter a template in the "Old Template" to match the
current date format in the filenames. Use the "New Template" to set the format of the new date. The
old template will be used to match dates in the current filenames. Where all elements of the old
template match, the new template will be used to reformat the date information in the filename. Where
necessary, months and days will be converted to or from number and text formats. Where elements needed
in the new template are not in the old template, a default day, month or year specified in Settings can
be used.
For convenience, some typical templates can be selected from the drop down arrows to the right of the template entry boxes. Use the radio buttons to select whether the reformatted date should remain in its current place or moved to the start or end of the filename. Optionally, a separator can be added before, after or both sides of the template. The separator can be enabled and specified in Settings.
The following format elements are supported:
| Template | Description |
| d, dd | - Day number with or without leading zeros |
| dddd, Dddd, DDDD | - Long day name (eg. Monday) in lower, Proper or UPPER case |
| ddd, Ddd, DDD | - Short day name (eg. Mon) in lower, Proper or UPPER case |
| m, mm | - Month number with or without leading zeros |
| mmmm, Mmmm, MMMM | - Long month name (eg. January) in lower, Proper or UPPER case |
| mmm, Mmm, MMM | - Short month name (eg. Jan) in lower, Proper or UPPER case |
| yy, yyyy | - Year number in short or long format |
These date elements can be used in any order with intermediate text. All other characters in the format such as spaces, brackets and date separators will appear literally as text. Please note that Windows filenaming conventions still apply, so reserved characters such as "/" or ":" or "\" should not be used. The "Ignore Case" checkbox can be checked to ignore case when checking date information against the old template. Please note that unexpected results can occur if the old template is ambiguous or incomplete.
Replace Text using Regular Expressions
For complex replacements, Regular Expressions can be used by setting the check box. Enter the regular
expression in the "Search Pattern" and the replacement text or pattern in "Replace Pattern". If brackets
() have been used to specify captures in the Search Pattern, use $1, $2 etc. to use the captures in the
Replace Pattern. For convenience, some typical patterns can be selected from the drop down arrows to the
right of the expression entry boxes. See the RegEx Help section for more details on Regular Expressions.
Some examples of use are given below.
Example 1: Insert an underscore before each capital letter, but not at start of filename.
| Search Pattern is: | ([^A-Z])([A-Z]) (ensure "Ignore Case" is unchecked) |
| Replace Pattern is: | $1_$2 |
| would change: | ThisIsTheFileName.txt |
| to produce: | This_Is_The_File_Name.txt |
Example 2: Replace only the first occurrence of a letter in a filename.
| Search Pattern is: | e(.*) (replace first "e" with "_") |
| Replace Pattern is: | _$1 |
| would change: | ThisIsTheFileName.txt |
| to produce: | ThisIsTh_FileName.txt |
Example 3: Replace only the last occurrence of a letter in a filename.
| Search Pattern is: | (.*)e (replace last "e" with "_") |
| Replace Pattern is: | $1_ |
| would change: | ThisIsTheFileName.txt |
| to produce: | ThisIsTheFileNam_.txt |
Example 4: Truncate a filename at the first occurrence of a character (keeping the character)
| Search Pattern is: | ^([^_]*_).*$ |
| Replace Pattern is: | $1 |
| would change: | This_Is_The_Filename.txt |
| to produce: | This_ (Protect File Ext unchecked) |
| or: | This_.txt (Protect File Ext checked) |
Example 5: Truncate a filename at the first occurrence of a character (removing the character too)
| Search Pattern is: | ^([^_]*)_+.*$ |
| Replace Pattern is: | $1 |
| would change: | This_Is_The_Filename.txt |
| to produce: | This (Protect File Ext unchecked) |
| or: | This.txt (Protect File Ext checked) |
Example 6: Truncate a filename at the last occurrence of a character (keeping the character)
| Search Pattern is: | ^(.*_).*$ |
| Replace Pattern is: | $1 |
| would change: | This_Is_The_Filename.txt |
| to produce: | This_Is_The_ (Protect File Ext unchecked) |
| or: | This_Is_The_.txt (Protect File Ext checked) |
Example 7: Truncate a filename at the last occurrence of a character (removing the character too)
| Search Pattern is: | ^(.*)_.*$ |
| Replace Pattern is: | $1 |
| would change: | This_Is_The_Filename.txt |
| to produce: | This_Is_The (Protect File Ext unchecked) |
| or: | This_Is_The.txt (Protect File Ext checked) |
Example 8: Remove start of a filename up to the first occurrence of a character (keeping the character)
| Search Pattern is: | ^[^_]*(_.*)$ |
| Replace Pattern is: | $1 |
| would change: | This_Is_The_Filename.txt |
| to produce: | _Is_The_Filename.txt |
Example 9: Remove start of a filename up to the first occurrence of a character (removing the character too)
| Search Pattern is: | ^[^_]*_(.*)$ |
| Replace Pattern is: | $1 |
| would change: | This_Is_The_Filename.txt |
| to produce: | Is_The_Filename.txt |
Example 10: Remove start of a filename up to the last occurrence of a character (keeping the character)
| Search Pattern is: | ^.*(_.*)$ |
| Replace Pattern is: | $1 |
| would change: | This_Is_The_Filename.txt |
| to produce: | _Filename.txt |
Example 11: Remove start of a filename up to the last occurrence of a character (removing the character too)
| Search Pattern is: | ^.*_(.*)$ |
| Replace Pattern is: | $1 |
| would change: | This_Is_The_Filename.txt |
| to produce: | Filename.txt |
Replace Text using DOS Wildcards
When the "Use Dos Wildcards" box is checked with Regular Expressions, the ? and * characters will be
interpreted as traditional DOS wildcards in the Search Pattern. This provides a simplified way to use
Regular Expressions without having to learn the complicated syntax. All other characters will have their
literal meaning. Use $1, $2 etc to specify the matches in the Replace Pattern.
Example 12: Transpose artist name and song title in a music filename
| Search Pattern is: | ?? * - *.mp3 |
| Replace Pattern is: | $1$2 $4 - $3.mp3 |
| would change: | 01 song title - artist name.mp3 |
| to produce: | 01 artist name - song title.mp3 |
Replace accented letters with the base letter
When the "Replace Accents" box is checked, letters in a filename containing an accent with be replaced
with the equivalent base letter. This provides a quick and convenient method to strip accents instead
of using text find and replace or manual editing.
Example 13: Replace accents in a filename
| would change: | This îs ä tèst filenãme.txt |
| to produce: | This is a test filename.txt |
Replace whitespace characters with spaces
When the "Whitespace" box is checked, characters in a filename matching any of the whitespace characters
specified in Settings with be replaced with a space. This provides a quick and convenient method to
convert whitespace instead of using text find and replace or manual editing.
Example 14: Replace whitespace in a filename
| would change: | This+is_a.test-filename.txt |
| to produce: | This is a test filename.txt |
The Remove tab provides a number of operations to remove text from the filename as described below.
The Remove Text is applied first, followed by the specified number of characters, followed by the target search.
The Insert tab provides a number of operations to insert text into the filename as described below.
Insert Text at Position
The text specified in "Insert Text" can be inserted into the Filename at the position specified in
"At Position". Position 1 inserts text before the start of the filename, position 2 inserts before the
second character and so on. Position -1 inserts text after the last character of the filename,
position -2 inserts after the second last character and so on. Position 0 disables Insert Text.
Right click any file in the File List and select "Use Filename as Insert Text" from the context menu
to copy the filename to the Insert text. The file attributes can also be viewed in the context menu.
Insert Line Number
The line number in the list can be inserted at any position from the the start or end of the filename.
This is useful for generating track or index numbers for media files. Use positive position numbers to
insert from the start of the filename or negative numbers to insert from the end of the filename.
Optionally, a space can be added before and after the line number, excluding at the start or end of the
filename. This is enabled in Settings. The starting number can be set and the numbers can be incremented
(numbers increase down the file list) or decremented (first file has the highest number decreasing down the
file list). Leading zeros can be also be included.
When Leading Zeros is set to 1 or more, the number of zeros specified will be inserted to the left of all single digit line numbers. Two digit numbers will have one less zero and so on. For example, if the number of leading zeros is set to 3, the first file in the list will have line number "0001" inserted at the start of the filename. The file in line 10 will have "0010" inserted, and so on.
When Leading Zeros is set to Auto, the number of zeros will be set to match the length of the highest line number so that no leading zeros are inserted for the highest number.
Add Date
A formatted date can be added to the filename. By default, this is the last modified date of the file.
The date can be changed to the current date in settings and can be inserted at any position from the
start or end of the filename. Use positive position numbers to insert from the start of the filename
or negative numbers to insert from the end of the filename.
The date format can be preselected from the drop down list and then manually changed to suit
requirements. The following format elements are supported:
| Template | Description |
| d, dd | - Day number with or without leading zeros |
| dddd, Dddd, DDDD | - Long day name (eg. Monday) in lower, Proper or UPPER case |
| ddd, Ddd, DDD | - Short day name (eg. Mon) in lower, Proper or UPPER case |
| m, mm | - Month number with or without leading zeros |
| mmmm, Mmmm, MMMM | - Long month name (eg. January) in lower, Proper or UPPER case |
| mmm, Mmm, MMM | - Short month name (eg. Jan) in lower, Proper or UPPER case |
| yy, yyyy | - Year number in short or long format |
These date elements can be used in any order with intermediate text. All other characters in the format such as spaces, brackets and date separators will appear literally as text appended to the filename. Please note that Windows filenaming conventions still apply, so reserved characters such as "/" or ":" or "\" should not be used.
For convenience, a separator can be added to the templates in the dropdown list before, after or both sides of the template. The separator can be enabled and specified in Settings.
Add Random Number
A formatted random number can be added to the filename. This is useful to randomise a list of say
image files for a slide show. The default number of digits and separator can be changed in Settings.
The number can be inserted at any position from the the start or end of the filename. Use positive
position numbers to insert from the start of the filename or negative numbers to insert from the end
of the filename.
The number format can be preselected from the drop down list and then manually changed to suit
requirements. Each n character in the format is converted to a single random digit between 0 and 9.
Some examples are:
| Template | Example |
| nnnn- | 2094-example.txt |
| _[nn-nn] | example_[36-71].txt (with Append) |
All other characters in the format such as spaces, brackets and other separators will appear literally as text added to the filename. Please note that Windows filenaming conventions still apply, so reserved characters such as "/" or ":" or "\" should not be used.
Apostrophes
Apostrophes can be automatically inserted when the "Apostrophe" checkbox is checked. This will scan the
filename and insert an apostrophe for a range of dropped letters and possessives. It is not perfect as
the rules for apostrophes can be complex and simple insertion can be ambiguous without grammatical
context. The insertion performed by FFR Plus is conservative and more likely to miss apostrophes than
add them but should nonetheless help to reduce manual editing.
Separators
Separators can be automatically inserted when the "Separators" checkbox is checked. This is useful to
remove Camel Case. It will scan the filename and insert a Separator between each Capital letter and
lower case letter immediately before it. By default, the separator is a "-" character but this can be
changed in Settings to any number of characters desired consistent with Windows filenaming conventions.
The Insert Text is applied first, followed by the line number if selected, followed by the date or random number if selected, followed by apostrophes, followed by separators. The Insert Text will only be applied if it contains one or more characters.
The Case tab allows the case used in the filename to be changed as follows:
Word Case and Selective Word Case both recognise the following special cases:
Use the "Extension Only" checkbox to apply the selected case change to the file extension only, leaving the main filename unchanged. Use the "Protect File Extension" checkbox to preserve the case of the file extension, applying the selected case change to the main filename only. These checkboxes are mutually exclusive. When "Extension Only" is checked, "Protect File Extension" will be automatically unchecked and vice versa.
The Tag tab provides a number of operations to work with MP3 audio files.
Rename file based on Tag contents
This allows MP3 files to be renamed based on the contents of the ID3 tag contained in the file. The
tag can be ID3 version 1, 2.2, 2.3 or 2.4. The new name is constructed from a template containing
markers for the MP3 tag elements. All other characters in the template are transferred literally to
the new filename.
The markers that can be used are:
|
|
To perform a rename using tags, click the "Update filename from Tag" checkbox on the Tag tab. Choose a template from the drop down menu and alter to suit if necessary. Then click "Simulate" or "Do Rename" to apply the template. Only files with an mp3 file extension can be renamed using this method. Files with all other extensions will be ignored.
| For example, the template: | %track% %artist% - %title% (%year%) |
| would create a filename: | 01 Artist Name - Song Title (1999).mp3 |
Save to Tag based on filename contents
To save information and images to a tag, click the "Update Tag from Filename" checkbox on the Tag tab.
This provides a number of options to save information to a tag as described below. These are intended
primarily for simple creation and modification of tags rather than more complex management tasks. For
these tasks, a separate full featured tag program should be employed.
The following tag entries can be viewed and changed in FFR Plus:
|
|
To view the contents of a tag, right click the filename and select "Show MP3 Tag details" from the context menu. The tag version and contents, if present, will be listed in the right top corner of the File List. Click an entry in the list to transfer the individual tag contents to the corresponding text boxes. Click "Copy All To Template" to transfer all tag contents. Click "Remove Tag" to remove the entire tag from the currently selected file. Alternatively, click the [ ] button to the right of the Album box to remove the tag from all selected files.
If one or more images are present in the tag, the number of images and details of the first image will be shown in the list. Click this entry to view the image. If more than one image is present, the image number and control buttons will be displayed below the image to allow the other images to be displayed. If an image is left displayed, it will be added to the selected files when the Save MP3 Tag button is clicked. Left click the image to clear it or Right click the image to save it to a file.
Images can also be removed but only if a file is specifically selected. To remove an image from the tag, click the ! button in the top right corner of the image. This will turn the button red and mark the image for removal when the tag is saved. If multiple images are present only one image can be removed at a time.
If multiple files are selected, the image(s) shown will be from the file that was right clicked on. If an image is then marked for removal, the same numbered image will be removed from all the other selected files even though the image may be different in those other files.
In all cases, any entered tag information for the above entries already present in the file will be overwritten, except for an image which will be preserved. A new image will always be added to the existing images in the tag. Any other tag entries will also be preserved. If the "Remove previous MP3 Tag" checkbox is checked in Settings, the entire tag will be removed before saving the tag information. This is useful to start with a clean tag or to update from version 2.2 tags but will also remove any other tag information. Version 1 tags if present will always be preserved. If the length marker is not present and the "Save song length to MP3 tag" checkbox is checked in Settings, the song length will be saved to the tag, otherwise, no changes will be made to this tag entry.
Tags are saved as ID3 version 2.3 based on the filename. Start by ensuring that "Enable mp3 Tag Saving" is checked in Settings. This will enable the "Update Tag from Filename" checkbox. Choose the required template from the dropdown and edit if needed to suit. The %ignore% marker can be used to ignore non specific text in the filename.
If necessary, select the desired mp3 files in the File List. Click the "Save MP3 tag...." checkbox. The "Do Rename" button with change to "Save MP3 Tag". Click this button to save the tag information. Again, tags can only be saved to files with an mp3 file extension.
| For example, the template: | %track% %artist% %title%_%ignore% |
| used on the filename: | 01 Artist Name Song Title_version x.mp3 |
would save "01" to the Track entry, "Artist Name" to the Artist entry and "Song Title" to the Title entry, ignoring everything following the underscore regardless of the content. If not indicated by markers in the template, the Album, Artist, Year and Genre can be specified in their respective text boxes. This is useful when saving tags to multiple files.
A new image can also be saved to a tag using an image file loaded from disk. Click the [ J ] button to the right of the Genre box to open a file dialog. The selected file will be displayed. Leave the image displayed and click the Save MP3 Tag button to copy the image to the tags of the selected files in the File List.
The Attribute tab allows the create and last modified date attributes and other file attributes to be changed.
File Dates
To update the date attributes of a file, check the boxes next to the attributes to be changed and set the
new dates using the Date Select controls. Check the "Both" box to apply to both dates. Click the [T]
buttons to the right of the Date Select controls to set today's date. Right click any file in the File
List and select "Use File Attributes as Attribute values" from the context menu to copy the file
attributes to the tab. The context menu also shows the current file attributes.
Other Attributes
To update Read Only, Archive, Hidden or System attributes, check the "Enable Attributes" checkbox then the
checkboxes for the desired attributes.
Select one or more files in the list, then click Simulate or Save Attributes to apply the changes.
The List tab allows files to be renamed from a one-for-one text list. This is particularly useful where the original filenames are significantly different and when the desired names can be taken from an existing list.
Get
Click the "Get" button to get the current filenames from the file list in the main window. A separate List window
will open containing the filenames, one to each line. This list can then be manually editied as a normal text file.
Line numbers can also be added to the start of each line with auto leading zeros as desired by clicking the
respective checkboxes. A space will also be added between the number and filename based on the "Add a space to
number inserts" checkbox on the "Action" tab in Settings. The text in the List window can also be copied and pasted
into an external text editor for other more cmplex changes then pasted back when ready.
New
Click the "New" button to open the List window as a blank text files. The desired filenames can then be entered one
line per filename as normal text or pasted in via the clipboard.
Load
Click the "Load" button to load an existing list of filenames from disk. A File Open dialog will appear to select the
desired text file.
Save
Click the "Save" button to save the contents of the List window to disk. A File Save dialog will appear to enter the
desired name for the file.
Click the "Simulate" button to test the changes or "Do Rename" to apply the changes. Note that changes will be applied line for line. Any excess lines in the List window will be ignored. Similarly, if there are fewer lines in the List Window than filenames in the File List, the remaining files will be left unchanged.
Use the Options menu to access the Settings tabs. The following settings are available:
Action Tab
This tab contains settings to control various actions, warnings, reporting and save/restore behaviour.
The number of simulations levels can also be set here.
Display Tab
The settings on this tab control the display of selected files when moving files up and down the
File List, changing the row height or resizing the main window. This tab also enables or disables some
ancilliary features.
MP3 Tab
This tab contains settings that control the behaviour of operations on MP3 files when managing ID3 tags.
As a protection, no operations can be performed until MP3 tag saving is enabled.
Apostrophe Tab
This tab allows access to the Apostrophe List, used to automatically insert apostrophes into matching
words in filenames. The list contains the words to be processed, one on each line and also allows words
to be added or deleted.
Templates Tab
This tab allows access to the Templates Lists, used for RedEx Search and Replace, Append Date and MP3 Tags.
The lists contains the templates, one on each line and also allows templates to be added, edited or
deleted.
Selective Case Tab
The Word Case Tab allows access to the Word Case Prefix, used in Word Case and Selective Case processing
to identify prefixes at the start of a word and capitalise the non-space character immediately following
the prefix. The list contains the prefixes, one on each line and also allows prefixes to be added or
deleted.
Selective Case Tab
This tab allows access to the Selective Case Word List, used in Selective Case processing to leave the
nominated words as lower case rather than Word case. The list contains the words, one on each line and
also allows words to be added or deleted.
CamelCase Tab
This tab allows access to the CamelCase separator List, used in CamelCase processing to specify the
nominated separator character or characters between words in the filename. By default, these characters
are single space, single underscore and single dash but technically can be more than one character, such
as "space dash space". The list contains the allowed character(s), one on each line and also allows
characters to be added or deleted.
Substitute Tab
This tab allows access to the Substitute List, used in Subst processing to specify the find text and
substitute text to use in the filename. The tab shows the find and substitute text, one on each line
and also allows text to be added, edited or deleted.
Unicode Tab
This tab allows access to the Unicodee List, used in Unicode processing to specify unicode characers and
one or more representative ANSI replacement characters to use in the filename. The tab shows the
unicode code point in hexadecimal and the replacement ANSI character(s), one on each line and also shows
an enlarged view of the selected character. Entries can be added, edited, deleted or returned to the
default set.
Portability Tab
This tab sets the option for saving settings when the FFRplus program is closed.
When the Remove Old Saved Settings File checkbox is selected, any saved settings file in the nonpreferred folder will be deleted. If Don't Save Settings is selected, saved files in both folders will be deleted.
The "Reload" button reloads all settings from the .ini settings file, overwriting the current settings.
The "Save Now" button allows the current settings to be saved immediately based on the selected options, rather than waiting to exit the program.
A regular expression or Regex allows complex search and replace operations. A Regex can contain instructions to build searches against one or more characters with controls to negate or repeat the search instructions multiple times. Replace operations can apply over multiple parts of the source text and also allow parts of the source to be transposed in the replacement. Some examples and a summary of the regex instructions are given below.
Examples:
| \w+ | Find any nonnull strings of alphanumeric characters |
| \bhello\b | Find "hello" as a whole word |
| \bhello\b.*\bthere\b | Find "hello" followed by "there" somewhere later in the text |
| \b\d{4}\d{4} | Find eight digits with separator in the middle. |
| "{4}" means "apply preceding character 4 times". | |
| \ba\w*\b | Find words that start with the letter a |
| a.*?b | Find the shortest string starting with a and ending with b |
| \d+ | Find repeated strings of digits |
| \b\w{6}\b | Find all six letter words |
| \b\w{5,6}\b | Find all five and six letter words |
| ^\w* | Find first word |
| \S+ | Find all strings that do not contain whitespace characters |
| \b(\w+)\b\s*\1\b | Find repeated words. "\1" means "match text found in (subex 1)" |
| \b\w*q[^u]\w*\b | Find Words with "q" followed by NOT "u" |
| \d{3}(?!\d) | Find three digits not followed by another digit |
Regex characters with special meaning:
| . | Match any character except newline |
| \w | Match any alphanumeric character |
| \s | Match any whitespace character |
| \d | Match any digit |
| \b | Match the beginning or end of a word |
| ^ | Match the beginning of the string |
| $ | Match the end of the string |
| \ | Escape character eg. \$ matches $ |
Negation:
| \W | Match any character that is NOT alphanumeric |
| \S | Match any character that is NOT whitespace |
| \D | Match any character that is NOT a digit |
| \B | Match a position that is NOT the beginning or end of a word |
| [^x] | Match any character that is NOT x |
| [^aeiou] | Match any character that is NOT one of the characters aeiou |
Repetitions:
| * | Repeat zero or more of times |
| + | Repeat one or more times |
| ? | Repeat zero or one time |
| {n} | Repeat n times |
| {n,m} | Repeat at least n, but no more than m times |
| {n,} | Repeat n or more times |
| *? | Repeat any number of times, but as few as possible |
| +? | Repeat one or more times, but as few as possible |
| ?? | Repeat zero or one time, but as few as possible |
| {n,m}? | Repeat at least n and no more than m times, but as few as possible |
| {n,}? | Repeat at least n times, but as few as possible |
Brackets:
| [ ] | Define a set of characters |
| ( ) | Define a sub expression or subex |
Captures:
| (subex) | Match subex and capture it in an automatically numbered group |
| (? | Match subex and capture it in a group named "name" |
| (?:subex) | Match subex, but do not capture it |
| $n | Specifies the nth capture in a Replace Pattern |
| $& | Specifies the entire regex match in a Replace Pattern |
Lookarounds:
| (?=subex) | Match any position preceding a suffix subex |
| (?<=subex) | Match any position following a prefix subex |
| (?!subex) | Match any position after which the suffix subex is not found |
| (?<!subex) | Match any position before which the prefix subex is not found |
Comment:
| (?#comment) | Add comment text in "comment" |
Other Regex elements: (not in a filename)
| \a | Bell character |
| \b | Normally a word boundary, but backspace within character class |
| \t | Tab character |
| \r | Carriage return character |
| \v | Vertical tab character |
| \f | Form feed character |
| \n | New line character |
| \e | Escape character |
| \nnn | Character whose ASCII octal code is nnn |
| \xnn | Character whose hexadecimal code is nn |
| \unnnn | Character whose Unicode is nnnn |
| \cN | Control N character eg. carriage return (CtrlM) is \cM |
| \A | Beginning of a string (like ^ but does not depend on the multiline option) |
| \Z | End of string or before \n at end of string (ignores multiline) |
| \z | End of string (ignores multiline) |
| \G | Beginning of the current search |
| \p{name} | Any character from the Unicode class named name eg. \p{IsGreek} |
Please note that transformations in a regex replace pattern, such as \U, \L and \E, are not supported due to restrictions in Visual Basic.