java - 正则表达式替换 spring :message tags with th:text equivalent

标签 java regex eclipse thymeleaf

使用Eclipse搜索功能CTRL-H ,什么是替换所有出现的 <spring:message /> 的正则表达式标签如:

<label>
    <spring:message code="name" />
</label>
<h1><spring:message code="title" /></h1>

与:

<label th:text="#{name}"></label>
<h1 th:text="#{title}"></h1>

编辑

如果正则表达式还可以处理以下内容的替换,那就太好了:

<label class="lalala"><spring:message code="name" /></label>

最佳答案

您可以使用这个通用的:

<([^>]+)>\s*<\s*spring:message\s+code="([^"]*)"[^<]+<\/\1>

并替换为:

<\1 th:text="#\{\2\}"><\/\1>

Regex Demo

您可能必须像这样转义 IDE 的反斜杠:

正则表达式:

(?s)<([^>]+)>\\s*<\\s*spring:message\\s+code=\"([^\"]*)\"[^<]+<\\/\\1>

替换

<\\1 th:text=\"#\\{\\2\\}\"><\\/\\1>

关于java - 正则表达式替换 spring :message tags with th:text equivalent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46558887/

相关文章:

java - 单击“下一步”时如何更改 EditTexts?

java - 使用 Jackson 反序列化 JSON - 为什么 JsonMappingException "No suitable constructor"?

java - PowerMock:如何抑制 spy 的父方法?

java - 正则表达式提取图像链接

java - 如何从 Java 读取 OSX .plist 文件?

javascript - 为什么以下 if 语句排除与其余数组相同的数组?

regex - 这些特殊字符在 Java 中是什么意思?

java - 如何在数组列表中插入每 10 行?

java - java函数描述如何在eclipse代码建议中工作

c++ - 将 dlib 添加到 C++ eclipse