gpt4 book ai didi

regex - ColdFusion - 将正则表达式反向引用传递给函数调用

转载 作者:行者123 更新时间:2023-12-02 00:40:24 25 4
gpt4 key购买 nike

我正在使用 ColdFusion 的 reReplace() 函数进行正则表达式模式替换。

我想对替换字符串使用函数调用,并将匹配的反向引用传递给它。

像这样的东西:

<cfset s = "STARTDATE_2010-05-07 00:05:00.0_ENDDATE" />
<cfset s = reReplace(s, "STARTDATE_([\s-.:0-9]*)_ENDDATE", dateAdd("h", 1, "\1")) />

但这失败了,因为“参数 3 的值,当前为\1,必须是一个类 java.util.Date 值。”

有没有其他方法可以实现这一目标?

谢谢,
斯图

最佳答案

我不太确定您的示例中描述的方法是否可以实现您想要做的事情,但这里概述了另一种应该可行的方法。

  • 去掉日期字符串
  • 使用 CreateDateTime
  • 将此字符串转换为时间对象
  • 对此对象执行任何日期操作,即 DateAdd
  • 使用 DateFormat 转换回字符串
  • 做替换

  • 当使用内置的 ColdFusion 日期和时间函数时,我喜欢始终确保我传递的是日期/时间对象,而不是需要日期/时间对象的参数的日期/时间字符串。这是因为 ColdFusion 可能会将字符串 days 解释为月,反之亦然。

    关于regex - ColdFusion - 将正则表达式反向引用传递给函数调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2780436/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com