我们如何才能从维基百科复制文本而不包含引用部分“[1]”、“[2]”、“[3]”?

我们如何才能从维基百科复制文本而不包含引用部分“[1]”、“[2]”、“[3]”?

如果我们复制文本维基百科页面,我们大致得到以下结果:

句子间距是排版文本中句子之间的水平间距。这是印刷惯例的问题。[1]自从活字印刷术传入欧洲以来,各种句子间距惯例被用于拉丁字母表的语言中。[2]这些包括正常的单词间距(如句子中的单词之间)、一个扩大的空格、两个完整空格,以及最近在数字媒体中出现的无空格。[3]虽然现代数字字体可以自动调整单个单词间距以在终止标点后创建视觉上令人愉悦且一致的间距,[4] 但 大多数争论是关于在句子之间是否要按一次或两次键盘上的空格键。[5]

我不想复制这些部分[1]等等[2]。这实际上是我想要复制的内容:

句子间距是排版文本中句子之间的水平间距。这是印刷惯例的问题。自从活字印刷术在欧洲推出以来,拉丁字母衍生语言中就使用了各种句子间距惯例。这些惯例包括正常的单词间距(如句子中的单词之间)、一个扩大的空格、两个完整的空格,以及最近在数字媒体中出现的无空格。虽然现代数字字体可以自动调整单个单词间距以在结束标点后创建视觉上令人愉悦且一致的间距,但大多数争论是关于句子之间是否应该按一次或两次键盘的空格键。

下面选定的答案使用正则表达式,但它不是每次都有效. (如果实际文本本身包含[并且]正则表达式不应该删除它们。)

还有更好的解决方案吗?

答案1

小书签是你的朋友...

创建一个新的浏览器书签并将下面的 javascript 代码复制到其中 - 当您想要从维基百科复制一些文本时,只需事先单击它,它就会删除所有[n]实例以满足您在问题中的要求。

javascript:function a (){document.body.innerHTML=document.body.innerHTML.replace(/<sup\b[^>]*>(.*?)<\/sup>/gi, "" );return;}; a();

在后台,它只是对<sup>...</sup>页面上的所有 HTML 标签进行正则表达式搜索和替换。

我刚刚在 IE7 中尝试过,它运行良好,所以希望在其他浏览器中也应该可以正常。

我会记这个 SO 线程为我指明了正确的方向——我知道书签是可行的方法,但之前从未写过。

答案2

CSS 属性user-select指定元素的文本是否可选(使用CtrlA、鼠标突出显示等)。以下 Wikipedia 的 CSS 规则将在突出显示文章文本时忽略选择中的内联引用:

sup.reference { user-select: none; }

将其添加到你的维基百科 CSS 文件(仅在您登录时有效);或通过浏览器扩展程序发送到用户样式表(例如触控笔),或者通过浏览器的内部功能(例如userContent.css对于 Firefox,custom.css对于 Chromium,无论是否登录维基百科帐户,该功能都会处于活动状态。

https://en.wikipedia.org/wiki/Help:Reference_display_customization更多示例。例如,要完全不显示内联引用编号,请使用:

sup.reference { display: none; }

相关内容