我有一个列表,其中包含长度从 1 个字符到数千个字符的文本。我想切断所有超过 255 个字符的文本。我怎样才能做到这一点?我是否必须检查每个字符串的长度,然后用 (255) 切割它,还是有更优雅的表达方式?
编辑:像这样
<% IF STRLEN( wa_comm-text ) > 255. %>
<%= wa_comm-text(255) %> ...
<% ELSE. %>
<%= wa_comm-text %>
<% ENDIF. %>
这是 BSP
提前致谢
另一种选择是:
<%
data: ls_text(255) type c.
ls_text = wa_comm-text.
%>
<%= ls_text %>
因为你显然不能在字符串上使用子字符串,如果它们更短,你会得到一个运行时错误。
我为此创建了一个名为 zss 的“字符串解决方案”类,它带有一个静态方法,可以截断给定的字符串和给定的长度。
然后你可以做这样的事情:
<%= zss=>left( s = wa_comm-text cutoff = 255 ). %>
甚至更具体的方法
<%= zss=>left255( wa_comm-text ). %>
作为一种选择:
<%= CONV char255( wa_comm-text ) %>
在这里完成内联转换和修剪到目标类型。