我非常喜欢groovy脚本。我有一个要求,需要将字符串拆分为不同的变量。
例如:100546_2018_03_100900100546_YDE4567832.xml
V1 : 100546
V2 : 2018
V3 : 03
V4 : 100900100546_YDE4567832.xml
你能不能帮助我获取代码片段。
答案 0 :(得分:4)
您可以split
使用_
最多4个元素来解决此问题。 E.g。
def s = "100546_2018_03_100900100546_YDE4567832.xml"
def (v1, v2, v3, v4) = s.split("_", 4) // XXX
println([v1,v2,v3,v4].inspect())
// => ['100546', '2018', '03', '100900100546_YDE4567832.xml']
答案 1 :(得分:1)
def s="100546_2018_03_100900100546_YDE4567832.xml"
def v=s.split("_")
println v[0] // prints 100546
println v[1] // prints 2018
println v[2] // prints 03
println v[3] // prints 100900100546
println v[4] // prints YDE4567832.xml
答案 2 :(得分:0)
def (v1, v2, v3, v4part1, v4part2) = '100546_2018_03_100900100546_YDE4567832.xml'.tokenize('_')
def v4 = v4part1 + '_' + v4part2
答案 3 :(得分:0)
以下代码符合您的预期结果。
String str = "100546_2018_03_100900100546_YDE4567832.xml"
List versionList = str.tokenize("_")
println "v1 : "+versionList[0]+", v2 : "+versionList[1]+", v3 : "+versionList[2]+", v4 : "+versionList[3]+"_"+versionList[4]
演示在这里:https://groovyconsole.appspot.com/script/5176945876664320