我想在day.month.year之间分隔一个日期。例如:2015年1月14日至{14,10,2015} 这是我使用的代码: dates3.get(0)包含字符串“14.01.2015”,我从页面的文本字段中获取。
##Splitting startingDate by point
#set($dates4 = [])
#foreach($id in $dates3.get(0).split(".")) ##BUG
#set($foo = $dates4.add($id))
$id<br>
#end
之后数组不包含任何内容,当我打印$ id时,它只打印一个空行。
我认为当我使用时 - 作为分隔符,它可以工作,但仅适用于月份值。 我必须在开始和结束时使用它(如下所示:“ - 14-01-2015-”)并获得索引1-3而不是0-2,以便它适用于所有三个值。
答案 0 :(得分:2)
split()
需要正则表达式(正则表达式)。正则表达式中的点代表“任何字符”,所以你需要逃避它:
.split("\.")
(对于通用读者:在其他情况下,反斜杠必须由另一个反斜杠转义,以便在字符串语法中存活:.split("\\.")
)