使用unicode字符打开纯文本?

Bry*_*eld 7 unicode strikethrough

是否有可能在代码注释中查找不需要的修改后的单词?由于开发人员仍然在黑暗时代编写一个简单的纯文本时间,其中文本无法使用隐藏标识符进行格式化,因此实现此目的的唯一方法是使用Unicode字符.

由于某些unicode字符可以延伸到它们指定的边界,我认为有可能找到一个Unicode字符来创建触发效果.

不幸的是破折号字符 - 占据了大量的水平空间.是否有一个替代角色可用于在我的文本中创建透视效果?

use*_*ica 10

有U + 0336,结合长时间的中风.谷歌搜索Unicode strikethough打开工具将其应用于您的文本,例如这个.它看起来是否有用取决于你的字体; 它在我的环境中看起来非常可怕.

  • 啊,这个̶s̶e̶e̶m̶s̶̶t̶o̶̶w̶o̶r̶k̶.与像M这样的宽字母相比,它看起来有点短,但你好像回答了我的问题.谢谢,抱歉没有正确搜索Google. (2认同)

Car*_*orc 6

您还可以在 Python 3+ 中使用此函数来动态生成它:

def striken(text):
    return ''.join(chr(822)+t for t in text)
Run Code Online (Sandbox Code Playgroud)

示例输出

>>> def striken(text):
...   return ''.join(chr(822)+t for t in text)
... 
>>> striken("hello")
'?h?e?l?l?o
>>> striken("hello darkness my old friend")
'?h?e?l?l?o? ?d?a?r?k?n?e?s?s? ?m?y? ?o?l?d? ?f?r?i?e?n?d'
Run Code Online (Sandbox Code Playgroud)

你也可以使用:

def striken(text):
    return '\u0336' + '\u0336'.join(text)
Run Code Online (Sandbox Code Playgroud)

如@astroMonkey 所建议的那样,如果您的文本很长,则速度会更快。

  • 使用 `'\u0336'.join(text) + '\u0336'` 避免了较慢的 python for 循环 (2认同)
  • @Caridorc 在 Unicode 中,变音符号总是添加在主要字符之后。因此,额外的删除线应该添加到末尾而不是开头。 (2认同)