问题标签 [wikitext]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 如何在正则表达式中指定随机组位置而不是顺序?
我正在尝试使用可用的维基词典数据转储下载,我一直在用 Java 及其正则表达式类(特别是 Pattern 和 Matcher)进行翻译,并取得了相当大的成功。
我主要感兴趣的词定义转储是原始 wiki 标记,它不是 html 也不是 xml 等,而是它自己独特的格式。有许多不同的元素,但最难处理的是模板。
我遇到的是具有位置字段的特定模板,以及可以以任何顺序出现的可选模板。我已经能够提出正则表达式,它几乎可以完成这项工作,但不足以处理我遇到的每个实例,其中字段被切换或可选地省略。
我从中意识到,当出现的顺序比序列更复杂时,我不知道如何指定正则表达式组的位置。
这些复杂模板之一的示例是“术语”模板,记录在以下页面上:http ://en.wiktionary.org/wiki/Template:term
我对正则表达式的最佳尝试(目前省略了使字符串 Java 兼容所需的额外转义字符)如下:
这适用于遇到的术语模板的真实示例,例如:
但它无法在以下情况下正常工作:
必须有一种方法来指定某些组是位置的,而某些组可以随机出现,而不仅仅是可选地以特定顺序出现。例如,这应该是处理许多 HTML 元素时的常见问题。我非常感谢有关如何编写正则表达式来处理这种位置复杂性的任何建议。非常感谢!- 杰夫。
c# - Mediawiki 链接的 XML 解析
我需要获取标签内的内容。所以我使用了这段代码
私人无效HttpsCompleted(对象发送者,DownloadStringCompletedEventArgs e){
也调用了这个方法。
但是当代码执行“var g = entry.Element(ns + "rev").Value.ToString();”时我得到空引用异常
请任何帮助。先感谢您
formatting - 维基媒体中使用的换行符
维基媒体项目格式中使用的换行符是什么?
因为没有撤消、重做或简单/快速保存机制,所以我在普通文本编辑器中编写了一个维基媒体页面。不幸的是,当我将它粘贴到我的维基媒体条目时,所有新行都消失了。
我尝试使用\n
, \r
, \n\r
, \n\n
, \r\r
, \n\r\n\r
, <br>
, 和<p></p>
作为换行符。但是,它们都不起作用。在 my \n
,\r
变化的情况下,没有任何反应。在 html 标签的情况下,我得到换行符,但其他格式都不起作用。
这里发生了什么?我该如何解决?
编辑:我也试过了\r\n
。
附录:升级到 1.24 后,文本恢复现在对我有用。
wikipedia-api - 从 wikimedia api 上的特定模板中提取信息
我想知道仅提取包含在某个模板中的信息的最简单方法是使用 wikimedia api。
我想为此页面提取模板“模板:Mycomorphbox”中包含的信息:http ://en.wikipedia.org/wiki/Amanita_phalloides
我有点沮丧,似乎我必须提取页面的全部内容才能获取我需要的信息。当然必须有更好的方法。
wikipedia - 维基百科如何呈现信息框
维基百科如何将信息框的 wikitext 转换为在网页上显示?
例如,巴拉克奥巴马的 wiki,当View source
,我们可以看到{{Infobox officeholder
模板,下面是这个信息框的片段
我感兴趣的是维基百科在网页上的显示nationality
方式Nationality
也party
作为Political party
birth_name
, birth_date
,birth_place
作为Born
html - Mediawiki:如何防止 wikitext 中的图像以 html 形式呈现?
为了提供现有 mediawiki 安装的移动版本,我一直在寻找一种可行的方法来从输出中删除所有图像。最优选的解决方案是生成的 html 将不再包含图像标签。由于我无法找到一个干净的解决方案,我将图像移动到不同的服务器并在此版本中禁用了 $wgForeignFileRepos 和 $wgAllowExternalImages。不幸的是 - 虽然没有显示图像 - 会出现一个占位符框,其中包含图像的名称和一个(现在不起作用)指向它的链接。
您是否知道一种无需使用 css/js 即可摆脱图像的方法或一种使我的方法完成的方法?
java - 通过正则表达式删除 wikitext 超链接
有两种不同类型的 wikitext 超链接:
我想删除超链接但保留文本:
目前,我正在运行两个阶段,使用两个不同的正则表达式:
有没有办法将两个正则表达式“融合”成一个,达到相同的结果?
如果您想检查您提出的解决方案的正确性,这里有一个简单的测试类:
parsing - 使用 Python 3 从 wikitext 解析元素和子元素
我正在尝试解析一些wikitext
. 这是我需要解析的文本示例:
这里的结构并不复杂:
标题我相信title
整个文档中至少有一个
子主题是可选
元素每个主题/子主题必须至少有一个
子元素是可选的并且可以重复
如果sub-elements
重复,我打算使用\ln
.
我想要做的是把它解析成字典,结构如下:
你知道任何 pythonic 的方式或想法来把它解析成我想要的吗?我会非常感谢你的时间。
PS。这是我试图解析和提取引号的完整文件: Woody Allen
regex - 记事本++。需要在行中第一次出现字符之前添加括号
请参阅维基百科文章“按人均卫生总支出划分的国家列表”。长表中列出的国家应该都是链接。这意味着在 wikitext 中,国家名称需要用双括号括起来。例如; [[澳大利亚]] - 这是创建国家列表时的常见问题。
我将 wikitext 粘贴到 Notepad++ 中。我知道如何在国名前加括号。有一些独特的字符和换行符允许我使用基本的查找和替换(不需要正则表达式)。
但我不知道如何在国名后添加括号。每个国家名称后都有一组双杠。但不幸的是,每行都有多组双杠。查看一些维基文本:
所以我需要一种方法,只在每行中找到第一组双杠,然后在它们前面添加括号。