繁体   English   中英

如何忽略文件中以“(*”开头并以“*)”结尾的行?

How to ignore lines in a file that start with "(*" and end with "*)"?

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在构建一个编译器并尝试解析 Java 中的文本文件。 在这个文本文件中,我希望忽略注释。 在注释的开头用“(”表示,用“ )”表示结束,然后继续解析。 我的词法分析器有 3 个状态:单词、数字/操作,现在是注释 state。 我在 if-else 语句中构造了这些。

我想像这样构建它:

} else if (input.equals("(*") {
    //ignore until find "*)"
}

但是,我不确定是否最好在我的 switch 语句中实现它,其中已经包含这些字符以使其更健壮,即

case'(':
    Token nextToken = totalTokens.get(totalTokens.size() - 1);
    boolean isAComment = isTokenAComment(nextToken);
    if(isAComment){
        //ignore input until find "*)"
    }

此选项类似于我区分负数或减法运算符的方式

case '-':
    // check the array of tokens if the last entry is an operator
    Token nextToken = allTokens.get(allTokens.size() - 1);
    boolean isOperator = isTokenAnOperator(nextToken);

   // if so assume this is a number and call isANegativeNumber method
   if (isOperator) {
        String isNegativeNumber = isNegativeNumber(input, i);
        if (isNegativeNumber.length() == 0) {
            throw new Exception();              
        } else {
            i += isNegativeNumber.length();
            allTokens.add(new Token(Token.TokenType.number, isNegativeNumber));
        }
   } else {
       allTokens.add(new Token(Token.TokenType.minus));
   }                                                                                    
   i++;
   break;
问题暂未有回复.您可以查看右边的相关问题.
2 忽略批处理文件中以#开头的处理行

我有一个名为“ props.txt”的属性文件,其值如下所示: 我编写了一个批处理脚本,将这些属性放入Windows 10环境变量中,如下所示: 现在,所有属性都放入环境变量中,即使它们以“#”开头。 我想忽略以“#”开头的属性。 我怎样才能做到这一点? 另外,我想跳过空白 ...

4 如何忽略文件中的无效行?

我正在迭代一个文件 当文件包含以下行时 这会产生以下异常 UnicodeDecodeError:'utf-8'编解码器无法解码位置3中的字节0xea:无效的连续字节 如何让我的脚本忽略这些行并继续使用好的行? ...

6 如何在不同行的日志文件中找到 2 个模式,但前提是它们是匹配的对(在这种情况下是任务的开始和结束)

首先,我做了很多谷歌搜索并尝试了 grep、sed 和 awk,但都找不到解决方案。 我的目标是在日志文件中找到 2 个模式,但前提是每个第一个模式都有匹配的第二个模式(它们之间没有匹配的第一个模式)。 之后,我将比较两者的时间戳以计算两者之间的时间,但这部分不是我卡住的地方。 我通过谷歌找到的几 ...

7 写入文件时如何忽略行

如何在c ++中的第n行(例如第5行)写入文件? 这是我的尝试: 在“ 1.txt”中,我在第四行有单词“ Student”,现在我想忽略上面的四行,并在第五行输入单词“ Input”(在单词“ Student”下方)。 当我运行上面的代码时,输​​出文件为空白。 任何建议如何解决 ...

2015-10-20 16:59:15 5 767   c++
8 如何忽略CSV文件中具有特定值的行?

我正在尝试读取CSV文件,并使用感兴趣的数据创建一个新文件。 在某些行中,特定数据值(在“年龄”和“性别”列中)被标记为-1,因此在新的CSV表中不需要。 我应该使用Pandas库重写它吗? 此外,我试图忽略先前的ID(因为某些行将被忽略),并将新的行数作为新的ID。 也欢迎其他任 ...

2019-02-19 15:58:51 2 43   csv
9 php函数nl2p忽略以方括号开头或结尾的行

我有一个正在运行的功能,但找不到适合我需要的修改方法。 功能: 处理的示例数据: 处理后所需的结果: 请注意,示例中的所有换行符和换行符都是故意给出的,以解释该功能可以找到的不同变体。 方括号内可以存在许多自定义标签,尽管看起来与bbcode接近,但并非 ...

10 在PyParsing中,如何忽略可能以空格开头的行?

我正在尝试解析类似于以下文件的数据(我将其命名为foo_badging.txt ): 我想首先解析前几行( package和sdkVersion )然后'跳过'几行直到我到达supports-screens行。 这是我到目前为止: 问题是我在缩进的use-feature行中得到 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM