【问题标题】:Normalize spaces in string to 1 space将字符串中的空格规范化为 1 个空格
【发布时间】:2021-08-21 19:49:56
【问题描述】:

输入字符串:input= "1222 d1212 transferx 111111111 kkk 111111111111111"

超光速:

<#assign op=input?split(" ")?join("','")>${op}

当前操作:1222','','','d1212','','','','','transferx','111111111','kkk','111111111111111

预期的 o/p :1222,d1212,transferx,111111111,kkk,111111111111111

如何将字符串中的空格规范化为 1 个空格,以便上面的 FTL 将给出预期的 o/p

【问题讨论】:

    标签: freemarker


    【解决方案1】:

    我不明白你为什么要先写?split,然后再写?join。为什么不使用?replace?

    那么,这个场景呢:" a b c "?这将导致",a,b,c,"。所以,我想你想先?trim你的字符串。所以:

    "  a  b c "?trim?replace("\\s+", ",", "r")
    

    另见:

    【讨论】:

      【解决方案2】:

      你可以使用:

      <#assign op=input?split("\\s+", "r")?join(",")>
      

      split builtin 的第二个参数r 表示第一个参数是正则表达式。 \\s+ 正则表达式表示一个或多个空格。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-03-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-09-23
        • 1970-01-01
        相关资源
        最近更新 更多