问题标签 [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.
javascript - 删除格式:WikiText (JavaScript)
我正在使用从 MediaWiki 页面收集源代码的 API,并希望找到一种从代码中提取纯文本的方法。有什么办法可以删除这种额外的格式?
例子:
来自 API 的文本
我想在不格式化的情况下提取的文本
有谁知道如何在 JavaScript 中执行此操作?还是可以执行此操作的节点模块?
mediawiki - MediaWiki API 从文章的另见部分获取所有链接
https://www.mediawiki.org/wiki/API:查询
从上面的链接中,请建议我一个适当的 API 来获取/获取文章的另见部分的所有链接。
例如:
我想要上面 5 个链接的列表。
有一个 API 可以获取与文章关联的外部链接: https ://en.wikipedia.org/w/api.php?format=json&action=query&titles=Pune&prop=extlinks
现在,回到关于 See Also 链接的原始问题 - 如果没有适当的 API,那么如果我们有 wikitext 内容模型,我们如何提取相同的链接。
wikitext 示例: https ://en.wikipedia.org/w/api.php?format=json&action=query&titles=Pune&prop=revisions&rvprop=content
regex - 如何使用 SPARQL 正则表达式解析 Wikitext 并从 Wikimedia Commons 模板中的参数中提取值?
此针对 Wikidata SPARQL 端点的查询返回 Wikimedia Commons 类别“奥克兰博物馆 1930 年代照片”中前 50 个文件的 Wikitext 内容。对于每个文件,我想从该内容中提取几条数据。
仅使用一个文件File:("Ultimate" stall) (AM 79483-1).jpg,例如,内容如下所示:
我对source
参数中的这 3 个值感兴趣。我试图用正则表达式解析这个内容;这是我写的第一个表达式,它涉及大部分 Wikitext:
我用 regex101.com 写了这个,据我所知,它说:
- 查找(并丢弃)直到 string 的所有内容
{{Images from Auckland Museum|
,包括该字符串。(这是我能想到的最明显的分隔符)。 - 捕捉之后发生的一切。
- 查找(并丢弃)从一对右大括号 (
}}
) 的第一次出现到末尾的所有内容。
这只留下我感兴趣的部分:
到目前为止,一切都很好。
然后,我使用以下表达式创建了另一个 regex101.com 会话来处理该部分:
据我所知,这个表达式说:
- 查找(并丢弃)直到并包括第一个
=
. - 在此之后捕获所有内容,直到但不包括第一个
|
……并重复三次,每个捕获组一次,给我想要的三个数据点。
我的问题是:
- 如何组合这些正则表达式?简单地将第二个插入第一个代替它
(.*?)
似乎不起作用。 - 鉴于正则表达式允许递归,是否有更好(即更有效)的方式来编写第二个表达式?(SPARQL 端点/语言会允许这样做吗?)
- 在获得第一个捕获组之后,第一个表达式中是否有任何方法可以简单地说,例如“我得到了我想要的;停止”——这样做会提高效率吗?
提前致谢。
infobox - 如何在 Fandom 的 Wikitext 中替换参数中的空格?
我想使用 Fandom 的 Wikitext 创建一个信息框模板,该模板具有链接到 Wikipedia 的数据。因此,如果有人使用以下模板:
它将在信息框中显示为:
城市:洛杉矶
我试过了:
但如果数据有空格,链接就会中断。
如何{{{city}}}
用%20
或不可能替换空格?
wikitext - golang wikitext 解析器从头开始
我被要求在 golang 中建立一个 wiki。一些编辑熟悉 wikitext,所以他们想保留它。我发现从头开始构建一个 wikitext 解析器真的很困难,而且没有开源的 golang 解析器。谁能给我一些建议?我搜索了 go.pkg,没有可用的 pkg