如何在 NetSuite freemarker 模板中按 space 拆分字符串?
How to split string by space in NetSuite freemarker template?
我们想在 NetSuite FreeMarker Template 中通过 space 拆分字符串并尝试了如下代码:
<#list tranline.inventorydetail?split(" ") as paragraph>
<#if paragraph_index == 0>
<tr>
<td colspan="1" >${showIndex}</td>
<td colspan="4">${tranline.item}</td>
<td align="left" colspan="6">${tranline.description}</td>
<td align="right" colspan="2">${tranline.quantityordered}</td>
<td align="right" colspan="2">${tranline.quantityremaining}</td>
<td align="right" colspan="2">${tranline.quantity}</td>
<td align="left" colspan="4">${paragraph?keep_before(",")}</td>
</tr>
<#else>
<tr>
<td colspan="1" ></td>
<td colspan="4"></td>
<td align="left" colspan="6"></td>
<td align="right" colspan="2"></td>
<td align="right" colspan="2"></td>
<td align="right" colspan="2"></td>
<td align="left" colspan="4">${paragraph?keep_before(",")}</td>
</tr>
</#if>
</#list>
但是没有生效
以下方法也不会按space将字符串拆分为数组:
<#list tranline.inventorydetail?split("\s+") as paragraph>
<#list tranline.inventorydetail?split("\s+") as paragraph>
<#list tranline.inventorydetail?split(" ") as paragraph>
有谁知道如何通过 space 在 NetSuite FreeeMarker 模板中拆分字符串?
您可以在 white-space 处将字符串拆分为 somestring?word_list
。连续的白色-space 字符将算作一个分隔符。请注意,它只将字符视为 white-space: space, \t
, \n
, \r
\f
(通常就足够了) .
您也可以使用 ?split(r'\s+', 'r')
,它将所有类型的 UNICODE 白色-space 识别为分隔符,但是,它也有一个小故障,对于 0 长度的字符串它 returns [""]
而不是 []
(因为那是 Java Pattern.split
的行为方式)。
我们想在 NetSuite FreeMarker Template 中通过 space 拆分字符串并尝试了如下代码:
<#list tranline.inventorydetail?split(" ") as paragraph>
<#if paragraph_index == 0>
<tr>
<td colspan="1" >${showIndex}</td>
<td colspan="4">${tranline.item}</td>
<td align="left" colspan="6">${tranline.description}</td>
<td align="right" colspan="2">${tranline.quantityordered}</td>
<td align="right" colspan="2">${tranline.quantityremaining}</td>
<td align="right" colspan="2">${tranline.quantity}</td>
<td align="left" colspan="4">${paragraph?keep_before(",")}</td>
</tr>
<#else>
<tr>
<td colspan="1" ></td>
<td colspan="4"></td>
<td align="left" colspan="6"></td>
<td align="right" colspan="2"></td>
<td align="right" colspan="2"></td>
<td align="right" colspan="2"></td>
<td align="left" colspan="4">${paragraph?keep_before(",")}</td>
</tr>
</#if>
</#list>
但是没有生效
以下方法也不会按space将字符串拆分为数组:
<#list tranline.inventorydetail?split("\s+") as paragraph>
<#list tranline.inventorydetail?split("\s+") as paragraph>
<#list tranline.inventorydetail?split(" ") as paragraph>
有谁知道如何通过 space 在 NetSuite FreeeMarker 模板中拆分字符串?
您可以在 white-space 处将字符串拆分为 somestring?word_list
。连续的白色-space 字符将算作一个分隔符。请注意,它只将字符视为 white-space: space, \t
, \n
, \r
\f
(通常就足够了) .
您也可以使用 ?split(r'\s+', 'r')
,它将所有类型的 UNICODE 白色-space 识别为分隔符,但是,它也有一个小故障,对于 0 长度的字符串它 returns [""]
而不是 []
(因为那是 Java Pattern.split
的行为方式)。