【发布时间】:2015-04-16 05:34:48
【问题描述】:
我有一个在字符串上运行的正则表达式列表,用于将其从一种格式格式转换为另一种格式。目前,所有这些正则表达式都存储在一个文件中。
通常,这可以正常工作。如果它将“Frog”读入$from,将“Toad”读入$to,那么“$string =~ s/$from/$to/”会根据需要将所有青蛙变成蟾蜍。
现在我想做一些更棘手的事情:给定日期“2015-04-15”,我想将其更改为“04/2015”,再次从文件中读取。如果我将“(\d\d\d\d)-(\d\d)-(\d\d)”加载到 $from 并将“$2/$1”加载到 $to,这不起作用:它替换带有文字字符串“$2/$1”的日期,输出中带有实际的美元符号。我需要做什么?
这是一个仅供家庭使用的脚本。如果可以让我的生活更简单,我很乐意使用 eval{} 或任何其他奇怪的东西。
【问题讨论】:
-
我只想补充一点,
(\d\d\d\d)-(\d\d)-(\d\d)在我看来不太好,我宁愿使用(\d{4})-(\d{2})-(\d{2})。