开发者社区 问答 正文

如何用最简洁的语句替换"{{}}"中内容?

比如:已知 name “amy”
输入:My name is {{ name }}
要求输出:My name is amy
由于对java的字符串操作不熟悉,我本人做法是构建一个 "{{ name }}"字符串(“{{ ”+ "name"+"}}"),然后匹配,找到后用 amy代替,不知道有没有更好的方法。
忘了一种复杂情况
name "Tom davae"
我想获得name这个属性,使key = name,value = Tom davae(去“”),不能用空格作为split的分割符,如何比较方便的得到这两个值

展开
收起
蛮大人123 2016-03-06 15:44:39 2260 分享 版权
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪

    如果是简单替换,那可以参考一下:

    String content = "Hello{{space}}World{{space}}{{other_str}}";
    Map<Object, Object> map = new HashMap();
    map.put("space", " ");
    map.put("other_str", "!!!");
    
    for(Map.Entry<Object, Object> entry : map.entrySet()) {
        String regex = "\\{\\{" + entry.getKey() + "\\}\\}";
        content = content.replaceAll(regex, entry.getValue().toString());
    }
    System.out.println(content);
    2019-07-17 18:54:46
    赞同 展开评论
问答分类:
问答地址: