在我的常规课程之一中,我正在尝试模式匹配,但没有成功。

def TestMap = ['/test.domain.local/ig':'serverx']

nodeName = 'test.domain.local'


for (kv in TestMap){
   if(nodeName != null && ("${nodeName}" =~ "${kv.key}")) {
      println "${kv.value}";
   }
}


但是如果条件不成立,我不知为何为什么?请注意,这不是完整的代码。这里的主要重点是模式匹配。

在此先感谢您的帮助。

最佳答案

如果条件应该相反(匹配以错误的方式完成)

def TestMap = [/test.domain.local/ig:'serverx']

nodeName = 'test.domain.local'

for (kv in TestMap){
    if(nodeName != null && ( "${nodeName}" =~ "${kv.key}")){
        println "${kv.value}";
    }
}

关于java - Groovy模式匹配问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31963145/

10-13 05:03