问题标签 [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 - 奇怪的(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 谷歌历史中 Zalgo 中的“c̷̙̲̝͖ͭ̏ͥͮ͟”字符

我已经设法c̷̙̲̝͖ͭ̏ͥͮ͟在 Chrome 的历史记录中获得了一个(来自 Zalgo),现在,任何以 a 开头的搜索都会c在我获得的地址栏中输入c̷̙̲̝͖ͭ̏ͥͮ͟

我该如何清除这个?

例如

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

0 投票
1 回答
95 浏览

html - 如何将文本限制在 SPAN 元素的范围内,包括重音/组合字符?

因此,一些聪明人正在将Zalgo Text放在他们的用户名中。我实际上并不想限制用户在他们的名字中使用重音符号,但是他们名字上方/下方的文字可能难以阅读。(请注意,这个示例实际上在完成的 SO 页面上呈现得非常好,但在编辑器中是另一回事!)

现在,我网站上的用户名以简单的<span>. 我想将一种样式应用于有效裁剪它包含的文本的跨度,以防止它溢出到元素之外(上方/下方)。

请注意,现在的行为非常不一致——有时符号会“渗入”用户名下方的行,有时则不会。它也可能因浏览器而异。如果可能的话,我更喜欢一个简单的跨平台解决方案。

0 投票
1 回答
1537 浏览

java - Java中的Zalgo文本?

所以我看到 Unicode 被利用来从正常的输入文本中产生一大堆看起来很吓人的字符,更广为人知的是 Zalgo 文本。HTML(编辑:javascript)似乎在这方面做得很好。所以我想知道,可以在 Java 中完成相同的(或类似的)吗?我对它比较陌生,所以我认为制作一个类似的发电机将是一个很好的练习。

0 投票
1 回答
1127 浏览

utf-8 - 这些角色是什么鬼?

我最近读了这篇关于堆栈溢出的帖子:

RegEx 匹配打开的标签,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 come the ich​or 渗透所有我的脸我的脸ᵒh上帝不不NOO̼ONΘ停止一个*̶͑̾̾​ ̅ͫ͏̙̤g͇̫͛͆̾ͫ̑͆l͖͉̗̩̳̟̍ͫͥͨe̠̅s͎a̧͈͖r̽̾̈́͒͑e n otrè̑ͧ̌aͨl̘̝̙̃ͤ͂̾̆l̘̝̙̃ͤ͂̾̆za̡͊͠͝lgόisͮ̂҉̯͈͕̹̘̱ th̘ë͖́̉p̯͍̭o̚p̯͍̭o̚n̐y̡y̡

..

单独看这些,它们看起来像单个字符。它们是如何创建的?我怎样才能找到有关他们的更多信息?例如,“A”字符:

一个

是吗?

0 投票
2 回答
3376 浏览

html - 这段文字怎么能跑出屏幕?

抱歉,我知道这有点像垃圾邮件,但这是有问题的文本。

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

这是如何运作的?它怎么能像那样跑出页面?

0 投票
1 回答
1440 浏览

html - 如何避免 Zalgo 文本在不完全删除的情况下到处流血?

我们的网络服务受到了一些Zalgo 文本的影响,我正在努力为未来想出一个好的解决方案。我们的政策是接受所有用户输入并将其保存在永久存储中(我们为后端正确编码输入,因此这部分没问题)。在输出阶段,我们通过带有白名单的过滤器/解析器运行原始用户输入,以避免 XSS 攻击和其他混乱。最近一些用户发现了 Zalgo 的世界,他们只是喜欢用它给其他人带来一些麻烦。

在我看来,Zalgo 文本只是从预期容器中泄漏出来的一段 Unicode 文本。结果,我认为自动删除所有复杂的组合字符是过于激烈的防御。有人知道强制 Zalgo 文本包含在给定父元素中而没有一些讨厌的副作用的 CSS 技巧吗?

例如,如果我有

如何确保用户输入不会泄漏到边界之外section.userinput?我猜overflow: hidden或者clip: rect(...)可能是正确的答案,但是您对这个用例有更好的了解吗?最好我仍然可以使用section.userinput { max-height: 200vh; }或类似的东西来避免用户创建人为的长评论。如果某些评论比 长200vh,它应该有一个单独的评论滚动条。通常整个页面应该只有一个滚动条。

请注意,我只是在尝试解决视觉领域的问题。我非常乐意接受任何有效的 UTF-8 序列作为用户输入,如果用户评论混乱导致用户评论看起来像废话,我也可以。我只是想避免这种垃圾到处溢出。具体来说,我不想在 display 之前阻止 zalgo 文本过滤类似 zalgo 的文本

0 投票
1 回答
1801 浏览

php - 如何使用 php 防止 zalgo 文本

我的图像板上的Zalgo有一些问题。

像下面这样的文字弄乱了我的图像板。有没有办法阻止这些字符并“修复”或清理文本?

示例文本来源

一切都是我失去的一切,他来了,他来了,他来了,或者渗透到我的所有脸上,我的脸是我的脸。 th̘ë͖́̉p̯͍̭o̚ n̐y̡y̡c̷̙̲̝͖ͭ̏ͥͮ͟oͮ͏̮̪̝͍m̲̖͊̒ͪͩͬ̚̚͜ȇ̴̟̟͙̞ͩ͌͝s̨̥̫͎̭ͯ̿̔̀ͅ

我尝试使用此解决方案:

取自这里:删除与格式混淆的特殊字符 但它仅适用于拉丁字符有人可以帮助我吗?

0 投票
5 回答
1794 浏览

validation - 符号显示不正确

符号是:ؤْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْْ

这个符号有什么特别之处,它来自哪里?

可以做些什么来验证此类输入?或者更好的是,如何正确显示这些符号(即不让它们与其他元素重叠)?