# 解析文字

当模板中需要使用<stl:content>、<stl:channel>、<stl:value>等标签解析文字时,我们可以通过属性来控制文字解析的格式。

# wordNum 文字字数

设置解析文字的字数,超出部分将用 ellipsis 属性设置的值替代。

TIP

wordNum 区分中英文,中文汉字算作一个字符,两个英文字母才算作一个字符。

由于在 Web 页面中,两个英文字母的宽度等于一个汉字,所以我们通常使用 wordNum 属性来设置文本的解析数量。

<stl:content wordNum="50"></stl:content>

# startIndex 文字开始位置

设置文字开始解析的位置,默认值为 0,代表从头解析。

TIP

startIndex 不区分中英文,汉字、英文字母、空格及符号均认为是一个字符。

<stl:content startIndex="10"></stl:content>

# length 文字字数

设置解析文字的字数,超出部分将用 ellipsis 属性设置的值替代。

TIP

length 不区分中英文,汉字、英文字母、空格及符号均认为是一个字符。

<stl:content length="100"></stl:content>

# ellipsis 省略符号

设置了 wordNum 属性或者 length 属性时,当文字超出了指定的字数后,超出部分将用 ellipsis 属性设置的值来替代。

ellipsis 的默认值为 ...,你也可以设置空值(ellipsis="")来让超出部分不使用符号替换。

<stl:content wordNum="100" ellipsis=" -- end --"></stl:content>

# replace 替换前文字

如果需要将文字中的一部分替换为另一部分,可以使用 replace 属性和 to 属性。

replace 代表需要替换的文字,支持纯文本、列表和正则表达式三种写法。

# 使用纯文本替换

纯文本替换直接输入替换前文字和替换后文字即可:

<stl:content replace="" to=""></stl:content>

# 使用列表替换

列表替换适合多个文本替换的情况,将需要替换的文字用英文逗号(,)隔开:

<stl:content replace="他,她" to="he,she"></stl:content>

如果多个文本都替换为一个文本,to 属性可以不使用逗号隔开:

<stl:content replace="他,她" to="who"></stl:content>

# 使用正则表达式替换

正则表达式替换需要将 replace 前后添加“/”符号,“/”符号之间的文字为替换需要使用的正则表达式:

<stl:content replace="/(Mr\\.? |Mrs\\.? |Miss |Ms\\.? )/" to=""></stl:content>

# to 替换后文字

to 代表替换后的文字。

# isClearTags 是否清除 HTML 标签

设置是否清除 HTML 标签,仅解析纯文本。

在后台内容编辑器中录入的数据通常会带有大量的 HTML 标签,如果我们只希望解析文字本身,需要使用 isClearTags 属性。

  • "true" 清除 HTML 标签。
  • "false" 不清除 HTML 标签。此值是默认的,如果没有指定属性的话。
<stl:content type="content" isClearTags="true"></stl:content>

# isReturnToBr 是否转换换行符

设置是否将回车换行符号替换为 HTML <br>换行标签。

由于 HTML 中的换行在页面中解析为空格,所以如果需要解析后台 TextArea 文本框录入的换行时,需要使用 isReturnToBr 属性。

  • "true" 替换回车符。
  • "false" 不替换回车符。此值是默认的,如果没有指定属性的话。
<stl:content type="summary" isReturnToBr="true"></stl:content>

# isLower 是否转换为小写

设置是否将文本中的所有英文字母转换为小写字母。

  • "true" 转换为小写。
  • "false" 不转换为小写。此值是默认的,如果没有指定属性的话。
<stl:content type="title" isLower="true"></stl:content>

# isUpper 是否转换为大写

设置是否将文本中的所有英文字母转换为大写字母。

  • "true" 转换为大写。
  • "false" 不转换为大写。此值是默认的,如果没有指定属性的话。
<stl:content type="title" isUpper="true"></stl:content>

# leftText 文字前缀

解析在文字之前的文字,系统会判断文字是否为空,如果文字为空,文字前缀也将不解析。

<stl:content leftText="标题:" type="title"></stl:content>

# rightText 文字后缀

解析在文字之后的文字,系统会判断文字是否为空,如果文字为空,文字后缀也将不解析。

<stl:content leftText="" rightText="" type="title"></stl:content>
上次更新: 2023/3/27 下午3:17:32