乍一看,我面临着一项相当微不足道的任务,但在一天之内,我并没有以某种方式取得进展。我需要在速度模板中处理一个字符串。该字符串具有这样的视图:
Maj - [at552] - asdfghjkksfgh <br /> Avg - [at553] - asdfghjkksfgh <br /> etc
我需要用以下文本替换 [ ] 符号中的文本:
<a href="http://someaddress/at522">at522</a> (at522 is specific for
each [ ] block)
我尝试了很多方法,但都没有奏效,所以我什至不知道我可以在这里发布哪些代码片段。一个重要的细节是我无法访问应用程序的 java 部分,只能访问传入速度模板的对象。我不能使用 JavaScript,因为这是一个电子邮件模板。我真的很感激每一个建议。
更新这是第一次出现 [ ] 时可以正常工作的代码
#set ($scopeComment = $issue.getCustomFieldValue("customfield_10201").replaceAll("\n", "<br />"))
#set ($start = $scopeComment.indexOf("["))
#set ($end = $scopeComment.indexOf("]"))
#set ($substr = $scopeComment.substring($start, $end))
#set ($scopeComment = $scopeComment.replace($substr, "<a href=\"localhost/$substr\">$substr</a>"))
但我不能让它在所有 [] 块的循环中工作这是我正在尝试的方法之一
#foreach ($index in [0..$scopeComment.length()])
#set($nextIndex = $index.index+1)
#set($curChar = $scopeComment.substring($index.index, $nextIndex))
#if ($curChar.equals("["))
#set ($start = $count+1)
#set ($end = $scopeComment.indexOf("]", count))
#set ($sub = $scopeComment.substring($start, $end))
$sub <br/>
#end
#end