<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 59, comments - 244, trackbacks - 0, articles - 0
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理
    在制作模板內容輸出時,很經常會使用<%=%>之類的占位符,用正則的方式很方便替換這個內容,工作中只接觸到java、php、js,三種語言的簡單的實現方式:
    java版
    import java.util.HashMap;
    import java.util.Map;
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;

    public class TestRex {
        public static void main(String[] args) {
            Map<String, String> map = new HashMap<String, String>();
            map.put("name", "penngo");
            map.put("date", "2013-01-17");
            Pattern p = Pattern.compile("<%=(\\w+?)%>");
            String str = "<%=date%>, Hello <%=name%>";
            Matcher m = p.matcher(str);
            StringBuffer sb = new StringBuffer();
            boolean result = m.find();
            while (result) {
                String key = m.group(1);
                String value = map.get(key);
                m.appendReplacement(sb, value);
                result = m.find();
            }
            m.appendTail(sb);
            System.out.println(sb.toString());
        }
    }

    php版
    <?php
        $data = array('name'=>'penngo', 'date'=>'2013-01-17');
        function replaceStr($key$data){
            return $data[$key];
        }
        $str = '<%=date%>, Hello <%=name%>';
        $str = preg_replace("/<%=(\w+?)%>/ise", "replaceStr('\\1', \$data)", $str);
        echo $str;
    ?>

    js版
    <html>
    <head>
        <meta charset="UTF-8">
        <script type="text/javascript">
        var date = {'name':'penngo', 'date':'2013-01-17'};
        var str = '<%=date%>, Hello <%=name%>';
        str = str.replace(/<%=(\w+?)%>/g, function($0, $1){
            var value = date[$1];
            return value;
        });
        document.write(str);
        </script>
    </head>
    <body>
        
    </body>
    </html>

    運行結果輸出:
    2013-01-17, Hello penngo
    主站蜘蛛池模板: 97se亚洲国产综合自在线| 亚洲精品无码久久毛片 | AV无码免费永久在线观看| 国产亚洲av人片在线观看| 精品一区二区三区无码免费直播| 亚洲第一成年免费网站| 亚洲天堂2017无码中文| 一二三四视频在线观看中文版免费| 精品亚洲成a人片在线观看少妇| 日本道免费精品一区二区| 亚洲理论电影在线观看| 嫩草在线视频www免费观看| 亚洲AV无码1区2区久久| 99热这里只有精品免费播放 | 亚洲午夜在线一区| 999国内精品永久免费视频| 亚洲最大成人网色香蕉| 女人张开腿等男人桶免费视频| 中文字幕亚洲码在线| 国产精品国产免费无码专区不卡| 亚洲AV无码专区在线观看成人| 青青青国产色视频在线观看国产亚洲欧洲国产综合 | 精品熟女少妇av免费久久| 在人线av无码免费高潮喷水| 亚洲永久在线观看| 国产精品免费小视频| 日韩在线视频线视频免费网站| 亚洲中文字幕无码久久2017| 一级毛片成人免费看免费不卡| 亚洲免费一级视频| 国产一区在线观看免费| 中文字幕不卡高清免费| 日本久久久久亚洲中字幕| 国产免费AV片在线播放唯爱网| 粉色视频免费入口| 亚洲va久久久噜噜噜久久狠狠| 国产高清免费视频| 日韩在线视频线视频免费网站| 亚洲综合国产精品| 国产精品自在自线免费观看| 久久久久久久久久国产精品免费 |