我有以下代码,它正常工作:
line.gsub!(%r{margdat= (\d+/\d+/\d+)}, 'stamp=CONVERT(date, \1,103)')
但是,出于代码风格的原因,我更喜欢使用命名捕获。目前 - 它看起来对我来说太像“perl like”。我尝试过这种事:
line.gsub!(%r{margdat= (?<date>\d+/\d+/\d+)}, "stamp=CONVERT(#{date}, \1,103)")
但它只是抱怨变量不存在。任何帮助表示赞赏。
答案 0 :(得分:3)
你想:
'stamp=CONVERT(date, \k<date>, 103)'