問題タブ [zalgo]

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.

0 投票する
3 に答える
11558 参照

unicode - 奇妙な (ユニコード?) 文字

ユーザーが私のサイトにいくつかの奇妙な文字を投稿していて、外国語で使用される文字をブロックせずにブロックしたいのですが、そのような文字をブロックしたいです... したがって、 のような正規表現を使用する[a-z0-9!@#$%^&*()...]ことはオプションではありません。

誰かがここで何が起こっているのか、なぜこのように表示されるのかを説明してもらえますか? キャラクターはどのように作成され、どのように防ぐことができますか?







ありがとう

編集:それで、それらは文字のアクセントに使用されますか? ユーザーを完全にブロックせずに、ユーザーがそれらを悪用するのを防ぐための一般的な慣行または方法はありますか? 私は外国語やその実際の使用/目的について十分に知らないので、結合文字の使用を制限するために何かを作成することは私の可能性の範囲外です. :-/

0 投票する
5 に答える
9003 参照

javascript - Z͎̠͗ͣḁ̵͙̑l͖͙̫̲̉̃ͦ̾͊ͬ̀g͔̤̞͓̐̓̒̽o͓̳͇̔ͥテキストを防ぐにはどうすればよいですか?

Zalgo テキストのしくみについて読んだことがあります。また、チャットまたはフォーラム ソフトウェアがその種の煩わしさをどのように防ぐことができるかを知りたいと思っています。より正確には、次のことを行う必要がある Unicode 結合文字の完全なセットは何ですか?

a) チャット参加者が結合記号を必要としない言語のみを使用すると仮定すると、削除されます (つまり、結合記号を使用して「婚約者」と書くこともできますが、そうすることに固執すると、少しZalgo'edになるでしょう)それで); また、

b) 最大 8 連続文字 (実際の言語で見られる最大数) に削減されましたか?

編集:その間、私は完全に異なる言い回しの質問を見つけました (「... 発音区別記号から保護するには?」)、これは本質的にこれと同じです。他の人が見つけやすいように、タイトルをより明確にしました。

0 投票する
1 に答える
404 参照

google-chrome - Chrome の Google 履歴の Zalgo の「c̷̙̲̝͖ͭ̏ͥͮ͟」文字

Chrome の履歴で (Zalgo から)を取得することができましたが、c̷̙̲̝͖ͭ̏ͥͮ͟現在、a で始まる検索はすべて、代わりcに取得したアドレス バーに入力されますc̷̙̲̝͖ͭ̏ͥͮ͟

これをクリアするにはどうすればよいですか?

例えば

c̷̙̲̝͖ͭ̏ͥͮ͟alender c̷̙̲̝͖ͭ̏ͥͮ͟upcakes

0 投票する
1 に答える
95 参照

html - アクセント/結合文字を含む SPAN 要素の境界にテキストを制限するにはどうすればよいですか?

そのため、一部の賢い人はユーザー名にZalgo Textを入れています。ユーザーの名前にアクセントを付けることを実際に制限したくはありませんが、名前の上/下のテキストは読みにくい場合があります。(この例は、完成した SO ページでは実際にかなりうまくレンダリングされますが、エディターでは別の問題であることに注意してください!)

現在、当サイトのユーザー名はシンプルに表示されています<span>。スパンにスタイルを適用して、含まれるテキストを効果的にトリミングして、要素の外側 (上/下) にはみ出さないようにしたいと考えています。

現時点では、動作がかなり一貫していないことに注意してください。記号がユーザー名の下の行に「流れ込む」場合と、そうでない場合があります。また、ブラウザによって異なる場合があります。可能であれば、単純なクロスプラットフォーム ソリューションを希望します。

0 投票する
1 に答える
1127 参照

utf-8 - これらのキャラクターは一体何ですか?

私は最近、スタックオーバーフローに関するこの投稿を読みました:

正規表現は、XHTML 自己完結型タグを除く開始タグに一致します

一番上の返信には、「出血」しているように見えるテキストを含むテキストが含まれています。

ea͠ki̧n͘g fr̶ǫm ̡yo ͟ur eye͢s̸ ̛l̕ik͏e 液体の痛み、正規表現解析の歌は、死すべき人間の声を球から消し去るでしょう 見えますか わかりますか ̲͚̖̙͎̩́t̲͎̩̱͔́̋̀男の嘘を最後に消し去る ALL IS LOŚ͖̩͇̗̪̏̈́T ALL I S LOST the pon̷y he come he c—̮omes he comes the ich or permeates all MY FACE MY FACE ᵒh god no NO NOO̼O O NΘ stop the an *̶͑̾̾ ̅ͫ͏̙̤g͇̫͛͆̾ͫ̑͆l͖͉̗̩̳̟̍ͫͥͨe

..

これらを個別に見ると、単一の文字のように見えます。それらはどのように作成されますか?それらに関する詳細情報を見つけるにはどうすればよいですか? たとえば、「A」文字:

あ̡͊͠͝

あれは何だよ?

0 投票する
2 に答える
3376 参照

html - このテキストはどのようにして画面からはみ出すことができますか?

申し訳ありませんが、少しスパムっぽいのは承知していますが、問題のテキストは次のとおりです。

ỏ̷͖͈̞̩͎̻̫̫̜͉̠̫͕̭̭̫̫̹̗̹͈̼̠̖͍͚̥͈̮̼͕̠̤̯̻̥̬̗̼̳̤̳̬̪̹͚̞̼̠͕̼̠̦͚_ỏ̷͖͈̞̩͎̻̫̫̜͉̠̫͕̭̭̫̫̹̗̹͈̼̠̖͍͚̥͈̮̼͕̠̤̯̻̥̬̗̼̳̤̳̬̪̹͚̞̼̠͕̼̠̦͚̫

これはどのように作動しますか?どうしてそのようにページから飛び出すことができるのでしょうか?

0 投票する
1 に答える
1440 参照

html - Zalgo テキストを完全に削除せずにあちこちににじむのを避けるには?

私たちの Web サービスは、いくつかのZalgo テキストで攻撃されており、将来のために適切な解決策を見つけようとしています。私たちのポリシーは、すべてのユーザー入力を受け入れ、永続的なストレージに保存することです (バックエンドの入力を正しくエンコードするため、この部分は問題ありません)。出力フェーズでは、XSS 攻撃やその他の混乱を避けるために、ホワイトリストを使用してフィルター/パーサーを介して元のユーザー入力を実行します。最近、一部のユーザーは Zalgo の世界を発見し、それで他の人に迷惑をかけるのが大好きです。

私が見たところ、Zalgo テキストは、意図したコンテナーから漏れ出た Unicode テキストの一部にすぎません。その結果、複雑な結合文字をすべて自動的に削除するのは、思い切った防御だと思います。厄介な副作用なしに、Zalgoテキストを特定の親要素に強制的に含めるCSSトリックを知っている人はいますか?

たとえば、私が持っている場合

ユーザー入力が の境界外に漏れないようにするにはどうすればよいsection.userinputですか? 私は正しい答えだと思いoverflow: hiddenますclip: rect(...)が、このユースケースでもっと良いことを知っていますか? section.userinput { max-height: 200vh; }ユーザーが人為的に長いコメントを作成するのを避けるために、または同様のものを引き続き使用することができれば幸いです。一部のコメントが よりも長い場合は200vh、そのコメントだけにスクロール バーが必要です。通常、ページ全体に対して 1 つのスクロール バーだけが必要です。

視覚的な領域でのみ問題に対処しようとしていることに注意してください。ユーザー入力として有効な UTF-8 シーケンスを受け入れることはまったく問題ありません。私はそのがらくたがいたるところに溢れるのを避けようとしているだけです。具体的には、 zalgo テキストをブロックしたり、zalgo のようなテキストを表示する前にフィルタリングしたりしようとしているわけではありません。

0 投票する
1 に答える
1801 参照

php - PHPを使用してzalgoテキストを防ぐ方法

イメージボードのZalgoに問題があります。

以下のようなテキストは私のイメージボードを台無しにします。これらの文字を防ぎ、テキストを「修正」またはクリーンアップする方法はありますか?

テキストの例ソース:

すべてが私が失ったのはすべてです。 th̘ë͖́̉ ͠p̯͍̭o̚n̐y̡h̸̡̪̯ͨ͊̽̅̾̎ȩ̬̩̾͛ͪ̈́̀́͘ ̶̧̨̱̹̭̯ͧ̾ͬc̷̙̲̝͖ͭ̏ͥͮ͟oͮ͏̮̪̝͍m̲̖͊̒ͪͩͬ̚̚͜ȇ̴̟̟͙̞ͩ͌͝s̨̥̫͎̭ͯ̿̔̀ͅ

私はこのソリューションを使用しようとしました:

ここから引用:書式設定を混乱させる特殊文字を削除する しかし、ラテン文字に対してのみ機能します 誰か助けてもらえますか?