【问题标题】:What word or phrase means the opposite of "white space"?什么词或短语与“空白”相反?
【发布时间】:2015-04-28 04:38:31
【问题描述】:

我目前正在编写一些处理字符串解析的 C# 扩展方法,我喜欢在我的方法名称中简洁、描述性和准确。

问题:有没有一个很好的词或短语来描述空白的反义词?

需要明确的是,这组字符是可见的,如果打印在纸上会消耗墨水。但我不想使用与墨水、纸张或印刷相关的术语,也不想假设任何特定的颜色。

VisibleCharacters 似乎在技术上最准确,但有点长。

NonWhiteSpace 对我来说似乎是双重否定。我宁愿处理存在的东西,而不是不存在的东西。

谢谢。

【问题讨论】:

  • 可打印字符
  • 我相信 Printable Charaacters 是相当常用的。该术语通常会排除控制字符,但可能适合您的目的。
  • Printable 肯定是传统词。但是,当数字化并远离纸质时,这似乎很奇怪。可能会有一天不再打印任何东西。我很确定我想太多了。只是希望有人知道一个我没有想到的术语。

标签: terminology


【解决方案1】:

我使用了“字形”这个词,并将我的函数称为 HasGlyph。

它似乎正确地覆盖了可读、可见和可打印的字符;但不涉及空格或控制字符。它不假定字符正在以图形方式显示或正在打印。它不假设任何颜色。它还涵盖字母、数字和形状。

另外,它的名字也很短。

http://en.wikipedia.org/wiki/Glyph

如果你好奇,我的扩展方法:

public static bool HasGlyph(this string value)
{
    if (string.IsNullOrWhitespace(value)) return false;
    // TODO: Not 100% sure if the opposite of the IsNullOrWhitespace method covers what I want, but its good enough until I find out otherwise.
    return true;
}

【讨论】:

    【解决方案2】:

    如果您真的指的是除空格之外的所有内容,我建议使用术语non-whitespace character。这也是 Perl 文档对 \S 字符类所做的事情,请参阅 perlreperlrecharclass 手册页(搜索 \S)。

    这个词

    • non-blank更准确(blank通常指的是ASCII码为32的字符)
    • 并不意味着空格不可打印

    请注意,此定义包括像 NULESC 这样的字符,它们既不是空格(因为它们实际上不插入任何类型的空格)也不是图形/可打印的。所以也许你真的想把自己限制在graphic 个字符上。

    【讨论】:

    • 我对此投了赞成票,因为当您开始处理 Unicode 字符时,它会变得更加复杂,我认为 glyph 不会成立。 non-whitespace 简单,含义清晰,涵盖 Unicode,不需要任何第二次猜测,也不需要查找定义即可确定。
    • 您有关于 Unicode 问题的示例吗?像一个字符示例?
    【解决方案3】:

    根据您在 Unix 手册 (man isspace) 中可以找到的内容,您可以称它们为“可打印字符”或“图形字符”:

       isspace()
              checks for white-space characters.  In the "C" and "POSIX" locales,
              these are: space, form-feed ('\f'), newline ('\n'), carriage return ('\r'),
              horizontal tab ('\t'), and vertical tab ('\v').
    
       isgraph()
              checks for any printable character except space.
    

    【讨论】:

    • 有趣的是,您的摘录实际上使用了术语printable character
    • 您的摘录表明图形和可打印字符包括 空格(否则不必声明except space)。除此之外,我认为空格是可打印的,因为没有它,每个输出看起来都不同。
    猜你喜欢
    • 2022-10-17
    • 2015-04-07
    • 1970-01-01
    • 2016-08-21
    • 1970-01-01
    • 2021-04-11
    • 1970-01-01
    • 1970-01-01
    • 2015-08-28
    相关资源
    最近更新 更多