wir*_*iko 0 groovy jenkins-pipeline
我有一个方法返回一个多行的字符串.我想解析String并得到每行的第一个单词.
方法getText()返回:
Lorem ipsum dolor
sit amet odio
magnis vitae iaculis
Run Code Online (Sandbox Code Playgroud)
我只想得到
Lorem
sit
magnis
Run Code Online (Sandbox Code Playgroud)
我目前的代码是
def projectString = getText()
def projects = projectString.substring(0, projectString.indexOf(' '))
Run Code Online (Sandbox Code Playgroud)
当然,这只会得到第一行的第一个字.我可以在字符串上使用while循环基于新行,并使用substring上面的方法获得第一个单词,但我感觉Groovy有一种更加流行的方式.
最初我正在考虑在方法调用结果上使用管道,就像这样
def projects = getText() | sh "awk '{print $1}'"
Run Code Online (Sandbox Code Playgroud)
但我无法让它发挥作用.
这是一个例子:
def projectString = """Lorem ipsum dolor
sit amet odio
magnis vitae iaculis"""
projectString = projectString
.readLines()
.collect { it[0.. it.indexOf(' ')] }
.join("\n")
println projectString
Run Code Online (Sandbox Code Playgroud)
您可以在线查看:https://groovyconsole.appspot.com/script/5132242514870272
| 归档时间: |
|
| 查看次数: |
1565 次 |
| 最近记录: |