前幾天將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("\\|")
演示如下:

