前幾天将09年寫的一個Asp程式使用Grails改造重寫,在處理手機号碼Split的時候,Asp代碼:
dim phoneArr
phoneArr = split(phones,"|")
照搬原來的分割處理,改成Groovy代碼如下:
String[] phoneArr = phones.split("|")
但是傳回的記過竟然是:
[, 1, 3, 5, 5, 3, 0, 0, 9, 9, 9, 0, |, 1, 3, 5, 0, 0, 4, 3, 2, 3, 1, 1]
最後才發現Groovy split是帶正規表達式的,而|符号是正規表達式的特殊字元,最後改成如下即可:
String[] phoneArr = phones.split("\\|")
示範如下: