zoukankan      html  css  js  c++  java
  • 201509-3 模板生成系统

    实现

    #include <iostream>
    #include <vector>
    #include <string>
    #include <map>
    
    using namespace std;
    
    vector<string> html_lines;
    map<string,string> vars_val;
    
    int main() {
        int html_line_num, var_line_num;
        cin >> html_line_num >> var_line_num;
        cin.ignore();
    
        for (int i = 0;i < html_line_num;++i) {
            string html_line;
            getline(cin,html_line);
            html_lines.push_back(html_line);
        }
    
        for (int i = 0;i < var_line_num;++i) {
            string var;
            getline(cin,var);
            int size = var.size();
            int space_pos = var.find(" ");
            vars_val[var.substr(0,space_pos)] 
                = var.substr(space_pos + 2, size - space_pos - 3);
        }
    
        for (int i = 0;i < html_line_num;++i) {
            string html_line = html_lines[i];
            int cur_left_pos = 0;
            int cur_right_pos = 0;
            while ((cur_left_pos = html_line.find("{{",cur_left_pos) ) != -1
            && (cur_right_pos = html_line.find("}}",cur_left_pos) )!= -1) {
                string var_key 
                = html_line.substr(cur_left_pos + 3, cur_right_pos - cur_left_pos - 4);
                if (vars_val.find(var_key) != vars_val.end()) {
                    string contend = vars_val[var_key];
                    html_line.replace(cur_left_pos,cur_right_pos + 2 - cur_left_pos,contend);
                    cur_left_pos = cur_left_pos + contend.size();
                } else {
                    html_line.replace(cur_left_pos,cur_right_pos + 2 - cur_left_pos,"");
                }
            }
            cout << html_line << endl;
        }
    
    }
    
  • 相关阅读:
    ASP.NET MVC Razor 视图引擎
    Asp.net MVC3 Razor语法小记
    @RenderPage用法
    余数算法
    Linux命令行下运行java.class文件
    Java学习---9.GUI编程
    Java学习---8.线程同步
    Java学习---7.多线程
    Java学习---6.常用的容器,流
    Java学习---5.数组
  • 原文地址:https://www.cnblogs.com/amonqsq/p/13577159.html
Copyright © 2011-2022 走看看