2016-09-28 55 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]