【问题标题】:How many non visual symbols present in String [closed]字符串中存在多少非视觉符号[关闭]
【发布时间】:2015-01-01 12:52:29
【问题描述】:

我正在使用 POI API 解析一个 excel 文档。 由于某些单元格最后包含换行符(\nBR),因此我必须在处理之前删除这些字符(例如:我正在处理该 excel 文档上的 URL 并在我的程序中使用另一个 API。)

现在我想知道 excel 解析字符串返回的字符串中存在多少非视觉符号,它们是什么?
如何编写 java 代码来完成这项任务?

提前致谢。

【问题讨论】:

  • 到目前为止你尝试过什么? research你做了什么?
  • 定义“非视觉符号”
  • 遍历字符串的字符,如果当前字符是“不可见的”,则增加一个计数器。困难的部分是定义“非视觉”的含义。

标签: java string character apache-poi


【解决方案1】:

如果您将制表符空格、换页符、换行符、空格作为非视觉字符,它们在大多数语言中都被称为非图形符号,并以 ASCII 表示,从 0 到 32(十进制形式)

下面的链接会告诉你ASCII码是做什么的以及它们对应的代码 http://msdn.microsoft.com/en-us/library/60ecse8t(v=vs.80).aspx

    String str="default string";
    Integer ctr[] = new Integer[32];
    for(int i=0;i<32;i++){
        ctr[i] = new Integer(0);
    }
    for(int i=0;i<str.length() ;i++){

        switch(str.charAt(i)){

        case 0 :
                ctr[0]++;
                break;
        case 1: ctr[1]++;
            break;

        case 2:
                ctr[2]++;
                break;

            //remaining counter 
        case 32:
                ctr[32]++;
                break;
        }
    }

您可以使用 ctr[] 检查计数器值

【讨论】:

    猜你喜欢
    • 2013-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-18
    • 2021-12-11
    • 2018-05-12
    • 1970-01-01
    相关资源
    最近更新 更多