我有一个字符串,其值由,字符表示。例如:
,
vals_str = "a, b , 55, val444"
我想生成以下数组:
vals_arr = ["a", "b", "55", "val444"]
我怎么才能在一行中使用groovy呢?
mbjcgjjk1#
您还可以在此处使用findAll()方法:
findAll()
vals_str = "a, b , 55, val444" vals_arr = vals_str.findAll("[^,\s]+") println vals_arr // [a, b, 55, val444]
6uxekuva2#
String.Split可以接受regex
def vals_str = "a, b , 55, val444" def vals_arr = vals_str.split(/s*,s*/)
o2gm4chl3#
灵感来自link
我通过两种方式实现了想要的解决方案:
vals_str = "a, b , 55, val444" vals_arr = vals_str.split(",").collect{ it.trim() }
vals_str = "a, b , 55, val444" vals_arr = vals_str.split(",")*.trim()
kmynzznz4#
您可以使用字符串tokenize()(源)
tokenize()
assert "a, b , 55, val444".tokenize(", ") == ["a", "b", "55", "val444"]
sigwle7e5#
Regex是一条可行的道路:
String res = "a, b , 55, val444".split( /W+/ ) assert res.toString() == '[a, b, 55, val444]'
5条答案
按热度按时间mbjcgjjk1#
您还可以在此处使用
findAll()
方法:6uxekuva2#
String.Split可以接受regex
o2gm4chl3#
灵感来自link
我通过两种方式实现了想要的解决方案:
kmynzznz4#
您可以使用字符串
tokenize()
(源)sigwle7e5#
Regex是一条可行的道路: