引用部分「[1]」、「[2]」、「[3]」なしでWikipediaからテキストをコピーするにはどうすればよいですか?

引用部分「[1]」、「[2]」、「[3]」なしでWikipediaからテキストをコピーするにはどうすればよいですか?

テキストをコピーするとWikipediaのページすると、おおよそ次のようになります:

文間は、活字で組まれたテキスト内の文と文の間の水平方向のスペースです。これは印刷上の慣習です。[1]ヨーロッパで活版印刷が導入されて以来、ラテン語由来のアルファベットを持つ言語では、さまざまな文間スペース慣習が使用されてきました。[2]これらには、通常の単語スペース (文中の単語間)、1 つの拡大スペース、2 つの完全なスペース、そして最近ではデジタル メディアではスペースなしなどがあります。[3]現代のデジタル フォントは、1 つの単語スペースを自動的に調整して、末尾の句読点の後に視覚的に美しく一貫したスペースを作成できますが、[4] ほとんどの議論は、文の間でキーボードのスペース バーを 1 回押すか 2 回押すかに関するものです。[5]

部品などをコピーしたいわけではありません[1][2]実際にコピーしたかったのは次のものです:

文間スペースとは、活字で組まれたテキスト内の文と文の間の水平方向のスペースのことです。これは印刷上の慣例です。ヨーロッパで活版印刷が導入されて以来、ラテン語由来のアルファベットを持つ言語では、さまざまな文間スペース慣例が使用されてきました。これには、通常の単語スペース (文中の単語間)、1 つの拡大スペース、2 つの完全なスペース、そして最近ではデジタル メディアでスペースなしなどがあります。最新のデジタル フォントでは、1 つの単語スペースを自動的に調整して、末尾の句読点の後に視覚的に美しく一貫したスペースを作成できますが、ほとんどの議論は、文と文の間でキーボードのスペース キーを 1 回押すか 2 回押すかに関するものです。

以下の選択された回答では正規表現が使用されていますが、いつもうまくいくわけではない(実際のテキスト自体に が含まれており[]正規表現でそれらを削除してはならない場合)。

もっと良い解決策はあるでしょうか?

答え1

ブックマークレットはあなたの友達です...

新しいブラウザ ブックマークを作成し、以下の JavaScript コードをコピーします。Wikipedia からテキストをコピーする場合は、事前にクリックするだけで、質問の要件を満たす[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; }

追加するWikipedia CSSファイル(ログインしている間のみ有効);またはブラウザ拡張機能を介してユーザースタイルシートに適用(例:スタイラス)、またはブラウザの内部機能(例:userContent.cssFirefoxの場合、custom.cssこれは、Wikipedia アカウントにログインしているかどうかに関係なくアクティブになります (Chromium 用)。

見るhttps://en.wikipedia.org/wiki/Help:リファレンス表示カスタマイズその他の例については、以下を参照してください。たとえば、インライン引用番号をまったく表示しない場合は、次のようにします。

sup.reference { display: none; }

関連情報