Release status: stable
|Implementation||Page action, Special page|
|Description||Allows for using regular expressions to edit multiple pages at once|
|Author(s)||Adam Nielsen (Malvineoustalk)|
|Latest version||8.4.1 (2019-12-28)|
|License||GNU General Public License 2.0 or later|
|Translate the MassEditRegex extension if it is available at translatewiki.net|
|Issues||Open tasks · Report a bug|
The MassEditRegex extension allows administrators perform a single edit across multiple pages in one step, by running a regular expression over the content of each page. This is well suited to performing simple edits such as renaming a template, adding pages to a category, or correcting typos (all of which can be done in the same edit operation by supplying multiple regular expressions.)
Once the extension has been installed and permission
masseditregex to use MassEditRegex has been given, go to "Special:MassEditRegex" and fill out the edit form.
Familiarity with regular expressions is required to use this extension.
- Page iteration can be done on the client side, so PHP maximum execution time is no longer an issue when editing large numbers of pages.
- Transform each page using one or more regular expressions in a single step.
- Edits appear as "bot" so they don't show up in the normal edit list (unless the user chooses to show bot edits).
- Only users with the
masseditregexpermission can perform changes.
- A new "edit all" tab appears on category pages and on Special:WhatLinksHere, for editing all listed pages at once.
- Pages to edit can be specified as:
- A list of page names
- A list of page name prefixes (e.g. "Test" will match pages called "Testing" and "Tested")
- A list of categories (all pages within the categories will be edited)
- A list of backlinks (pages edited are those linking to the ones in the list)
- Download and place the file(s) in a directory called
- Add the following code at the bottom of your LocalSettings.php:
wfLoadExtension( 'MassEditRegex' );
- Configure user group and user right at your convenience.
- Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.
To users running MediaWiki 1.34 or earlier:
The instructions above describe the new way of installing this extension using
If you need to install this extension on these earlier versions (MediaWiki 1.34 and earlier), instead of
wfLoadExtension( 'MassEditRegex' );, you need to use:
This extension comes with an extra user right called "
masseditregex" to allow fine grained control of which user groups may use this extension.
By default it is assigned to no user group.
In case you would like to assign it to a user group e.g. "
masseditregexeditor", add the following code to you "
LocalSettings.php" file right after the lines added in step (3) of the installation process:
$wgGroupPermissions['masseditregexeditor']['masseditregex'] = true;
Alternatively you may grant the permission to an existing user group, e.g. "
sysop" by adding the following line:
$wgGroupPermissions['sysop']['masseditregex'] = true;
- Adding content to the top of the page
- Detect any first character at the beginning of a page: → Search for:
- Prepend my content to the char found a the beginning of a page including a line break: → Replace with:
- Server-side execution is the default as it (should) be faster.
However editing large numbers of pages will cause server timeouts due to PHP limits on script execution time. To work around this (and perhaps to get better feedback on progress) you can tick "execute in browser" to have the job tracking done on the client-side. This should mean timeouts are no longer a problem.
- Page not found
In (at least) MediaWiki 1.31 and later, when the regex you provide is invalid, it will falsely indicate that all of the pages you selected for replacement are not found.
- Replacement in certain namespaces
If you would like to replace text only in certain namespaces, e.g. "File" and enter this with the page prefix option you will get the following note: "Error: The MediaWiki API returned the error code invalidtitle: Bad title "File:"."