Jump to content

Extension:MassEditRegex/zh

From mediawiki.org
This page is a translated version of the page Extension:MassEditRegex and the translation is 100% complete.
MediaWiki扩展手册
MassEditRegex
发行状态: 稳定版
实现 页面操作 , 特殊页面
描述 允许使用正则表达式一次编辑多个页面
作者 Adam Nielsen (Malvineous留言)
最新版本 8.4.1
MediaWiki >= 1.40.0
数据库更改
许可协议 GNU通用公眾授權條款2.0或更新版本
下載
  • $wgAjaxExportList
  • masseditregex
前往translatewiki.net翻譯MassEditRegex扩展
問題 开启的任务 · 报告错误

借助MassEditRegex扩展,管理员可通过在每页内容上运行正则表达式,一次性对多个页面进行统一编辑。 该功能非常适合执行简单的编辑操作,例如重命名模板、将页面添加至分类或修正拼写错误(通过提供多个正则表达式,所有这些操作均可在同一次编辑中完成)。


使用

安装扩展并获得使用MassEditRegex的权限masseditregex后,前往"Special:MassEditRegex"填写编辑表单。 使用此扩展需熟悉正则表达式。

警告 警告: If an admin uses an evil regex (for example- ^(([a-z])+.)+[A-Z]([a-z])+$) to perform replacements on a page with bad text (aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa! for the example regex) (which does not match with the regex) using their browser then MassEditRegex hangs forever, causing a self-Regex Denial-of-Service.

功能

  • 页面迭代可以在客户端进行,因此在编辑大量页面时,PHP的最大执行时间不再成为问题。
  • 在单一步骤中,使用一个或多个正则表达式转换每个页面。
  • 编辑内容会显示为“机器人”操作,因此不会出现在常规编辑列表中(除非用户选择显示机器人编辑)。
  • 只有拥有masseditregex权限的用户才能执行更改。
  • 分类页面和Special:WhatLinksHere上出现了一个新的“编辑全部”标签页,用于一次性编辑所有列出的页面。
  • 可指定编辑的页面包括:
    • 页面名称列表
    • 页面名称前缀列表(例如,"Test"将匹配名为"Testing"和"Tested"的页面)
    • 类别列表(类别中的所有页面将被编辑)
    • 反向链接列表(被编辑的页面是那些链接到列表中页面的页面)

安装

配置

此扩展附带一项名为“masseditregex”的额外用户权限,可精确控制哪些用户组能够使用此扩展。 默认情况下,它不会被分配给任何用户组。 若想将其分配给用户组(例如"masseditregexeditor"),请在安装过程第(3)步已添加代码行之后,将以下代码加入您的"LocalSettings.php"文件中:

$wgGroupPermissions['masseditregexeditor']['masseditregex'] = true;

或者,您可以通过添加以下行(例如“sysop”),将此权限授予现有用户组:

$wgGroupPermissions['sysop']['masseditregex'] = true;

提示

在页面顶部添加内容:

  • 检测页面开头的任何首字符:→ 搜索内容: /^(.)/
  • 在页面开头的字符前添加我的内容,并包含换行符:→ 替换为: MyContent\n$1

已知问题

服务器端执行是默认选项,因为它(理应)速度更快。

然而,编辑大量页面会因PHP对脚本执行时间的限制而导致服务器超时。 要解决此问题(或许也是为了获得更好的进度反馈),您可以勾选“在浏览器中执行”选项,将作业跟踪移至客户端处理。 这意味着超时问题应该已经得到解决。

页面未找到

(至少)在MediaWiki 1.31及后续版本中,当您提供的正则表达式无效时,系统会错误地提示您所选的全部替换页面均不存在。

特定命名空间中的替换

如果您只想在特定命名空间(如“文件”)中替换文本,并选择页面前缀选项,将会收到以下提示:“错误:MediaWiki API返回错误代码‘invalidtitle’:标题‘文件:’无效。”

参见