我有以下网址字符串/ level1 / level2 / level3 / _________________
现在我需要将子串到达3级,即/ level1 / level2 / level3。我怎样才能实现它?
谢谢,
答案 0 :(得分:1)
可能有使用?substring
和?index_of
的解决方案,但另一种解决方案会使用?split("/")
。这会将字符串转换为您可以操作的序列。
<#assign URL = "level1/level2/level3/level4/file" />
<#assign seqURL = URL?split('/') />
${seqURL[0]+'/'+seqURL[1]+'/'+seqURL[2]}
执行此查找的另一种方法是将序列块化并加入第一个块。
${URL?split('/')?chunk(3)[0]?join("/")}
答案 1 :(得分:1)
假设它始终以Settings
开头,您可以使用正则表达式执行此操作:
/
请注意,如果少于3个级别,或者正好是3级但第3级不以${u?matches(r'^((/[^/]+){0,3})', 'r')[0]}
结尾,则此功能也可以使用。
答案 2 :(得分:0)