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

    主要是string---STL的运用

    趁机整理一下erase, find, substr, replace, insert

    #include <bits/stdc++.h>
    using namespace std;
    int main ()
    {
        string str="0123456789",tmp;
        // erase (起始位置,长度)
        tmp=str; tmp.erase(0,3); cout<<tmp<<endl;  // 3456789
        tmp=str; tmp.erase(3); cout<<tmp<<endl;    // 012
        // find (要寻找的字符,起始位置) 没有找到是-1
        int x=str.find("123",3); cout<<x<<endl; // 1
            x=str.find("123");   cout<<x<<endl; // -1
        // insert (起始位置,字符串)
        tmp=str; tmp.insert(2,"abc"); cout<<tmp<<endl; // 01abc23456789
        // replace (起始位置,长度,替换的字符串)
        tmp=str; tmp.replace(4,3,"abc"); cout<<tmp<<endl; // 0123abc789
        // substr  (起始位置,长度)
        tmp=str; string s1=tmp.substr(2,3); cout<<s1<<endl; // 234
        tmp=str;        s1=tmp.substr(2); cout<<s1<<endl;   // 23456789
        return 0;
    }
     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 const int N=107;
     4 string str[N];
     5 map <string,string> mapp;
     6 int main ()
     7 {
     8     int m,n; cin>>m>>n; getchar();
     9     for (int i=0;i<m;i++)  
    10         getline(cin,str[i]);
    11     for (int i=0;i<n;i++) {
    12         string s1,s2; 
    13         cin>>s1; getline(cin,s2);
    14         s2=s2.substr(2,s2.size()-3);
    15         mapp[s1]=s2;
    16     }
    17     for (int i=0;i<m;i++) {
    18         string s=str[i];
    19         string tmp; int j=0;
    20         while (j<s.size()) {
    21             int _s=s.find("{{ ",j);
    22             int _e=s.find(" }}",_s);
    23             if (_s!=-1&&_e!=-1) {  
    24                 int len=_e-_s-3;
    25                 string txt=s.substr(_s+3,len);
    26                 txt=mapp[txt];
    27                 s.replace(_s,_e+3-_s,txt);
    28                 j=_s+txt.size(); // j=_e+3;  字符串替换后 长度也发生了变化
    29             }
    30             else break;
    31         }
    32         cout<<s<<"
    ";                
    33     }
    34     return 0;
    35 }
    抓住青春的尾巴。。。
  • 相关阅读:
    js类型转换的坑
    JS自动填写分号导致的坑
    tomcat+javaWeb+spring的一个都市供求管理系统
    java学习笔记--java中的基本数组[5]
    mysql基础语法及拓展到web中的sql注入
    angular指令大全
    在chrome下-webkit-box布局的一个bug
    use redis instance in docker hub
    centos yum install oracle java
    认识Debian
  • 原文地址:https://www.cnblogs.com/xidian-mao/p/10492040.html
Copyright © 2011-2022 走看看