的第一個角色,我有像這樣的字符串:ABC和位置:Grails的去除串
params.search = abc def 123
字符串,名
高清123
params.search.split(" ").each{ key->
ilike ('name', key[0].toString())
ilike ('position', ....
}
我的問題是,我該怎麼去除字符串名稱(字符串的第一個索引),然後設置字符串的休息位置ILIKE()
的第一個角色,我有像這樣的字符串:ABC和位置:Grails的去除串
params.search = abc def 123
字符串,名
高清123
params.search.split(" ").each{ key->
ilike ('name', key[0].toString())
ilike ('position', ....
}
我的問題是,我該怎麼去除字符串名稱(字符串的第一個索引),然後設置字符串的休息位置ILIKE()
我想你正在尋找name
是abc
和position
是def 123
?
def string = "abc def 123"
def splitStr = string.split()
def name = splitStr[0]
def position = splitStr[1..-1].join(/ /)
assert name == 'abc'
assert position == 'def 123'
UPDATE
我寧願用@Tim's approach因爲上面的方法很冗長。
使用split(regex, limit)
和多個賦值使得實現更加靈活和更智能。
limit參數控制應用模式爲 的次數,因此會影響結果數組的長度。
That answer是問題的最佳答案,應該接受。 :)
你也可以使用多個任務,並從split
限制結果:
def str = "abc def 123"
def (name,position) = str.split(' ', 2)
assert name == 'abc'
assert position == 'def 123'
哇。這應該是被接受的答案。我記得使用這種格式,但在發帖時半夜忘了。謝了哥們。 +1 – dmahapatro
@what是您所需的輸出把它的問題,請添加信息...問題不是那麼清楚 – danielad