如果语句因进行正则表达式比较而失败

问题描述 投票:0回答:1
public list[str] deleteBlockComments(list[str] fileLines)
{
    bool blockComment = false;
    list[str] sourceFile = [];
    for(fileLine <- fileLines)
    {
        fileLine = trim(fileLine);
        println(fileLine);
        if (/^[\t]*[\/*].*$/ := fileLine) 
        {
            blockComment = true;    
        }
        if (/^[\t]*[*\/].*$/ := fileLine) 
        {
            blockComment = false;
        }
        println(blockComment);
        if(!blockComment)
        {
            sourceFile = sourceFile + fileLine;
        }
    }
    return sourceFile;
}

由于某种原因,我无法在字符串开头检测到/*。如果我在命令行上执行此操作,它似乎可以正常工作。

有人可以告诉我我做错了什么吗?在下面的图片中,您可以在比较结果上方看到要比较的字符串(false)。

“代码执行快照”“ >>

public list [str] deleteBlockComments(list [str] fileLines){bool blockComment = false; list [str] sourceFile = []; for(fileLine

regex if-statement comments rascal
1个回答
1
投票

[\/*]是与正斜杠

© www.soinside.com 2019 - 2024. All rights reserved.