2016-09-28 35 views
2

我有输入作为上期Groovy的分裂,只返回第一个值

var = primarynode.domain.local

,现在我只需要primarynode如此。

我正在寻找拆分和标记,但无法在一行代码中完成。有谁知道如何在一行代码中做到这一点?

回答

4

那么假设您只想从输入字符串中获取第一个字(在.之前) 。

您可以使用String

tokenize运营商如果您有

def var = "primarynode.domain.local" 

那么你可以做

def firstValue = ​var.tokenize(".")[0]​ 
println firstValue 

输出

primarynode 
+0

谢谢。我错过了“[0]”部分。 –

2

split方法的工作原理,你只需要知道参数是一个正则表达式而不是一个普通的String。并且因为“。”是指在正则表达式“任何字符”,你需要逃脱它...

var = 'primarynode.domain.local'.split(/\./)[0] 

...或者使用字符类(以下简称“”不是特殊字符类中)

var = 'primarynode.domain.local'.split(/[.]/)[0]