一個小工具,解析微信接龍數據,轉成excel表格(附源碼)


需求:

很多個微信群,群中進行接龍,填寫個人姓名及英文名稱。原始數據格式如下:

#接龍
為了雙師課堂的有效進行,現需要統計學生的英文名字,如下

1. 一2班+中文名+英文名
2. 一2班+孟詩達+King
3. 一2班+湯博源+Peter
4. 一2班+鄧冠涵+Tracy
5. 一2班     胡思沁       Elsa
6. 一2班+陳烯琪+Crystal
7. 一2班+丁梓鳴+Apple
8. 一2班郭兆藝+George
9. 一2班 馮語鑠 Steven

因為有很多個班,要將這些數據匯總並導出到excel中,於是花了半個小時來寫了個小工具來解析數據,導出csv文件,效果如下:

 

用excel打開的效果如下:

 

 

 

 

附上源代碼如下:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=1380">
</head>
<body>
<textarea id="content" rows="50" cols="100" placeholder="把微信里的接龍信息全部復制到這個框里,然后點格式化"></textarea>
<button onclick="format()" style="position:absolute;top:313px;left:738px">格式化>></button>
<button onclick="download()" style="position:absolute;top:393px;left:738px">結果下載</button>
<textarea id="result" rows="50" cols="100" style="margin-left:100px" placeholder="格式化結果顯示框"></textarea>
</body>
<script>

function format(){
    document.getElementById("result").value =""
    var content = document.getElementById("content").value;
    if(content){
        var array = content.match(/(\d+)\.\s*([一二三四五六]\d+班).?([\u4e00-\u9fa5]+).?(\w+)/g);
        for(var i=0;i<array.length;i++){
            var line = array[i];
            line.match(/(\d+)\.\s*([一二三四五六]\d+班).?([\u4e00-\u9fa5]+).?(\w+)/g);
            var result = RegExp.$2+","+RegExp.$3+","+RegExp.$4;
            document.getElementById("result").value = document.getElementById("result").value+result+"\n"
        }
    }    
}

function download( ){
    var array = document.getElementById("result").value.split("\n")
    var data = [];
    for(var i=0;i<array.length;i++){
        var line = array[i];
        var lineData = line.split(",");
        var className = lineData[0];
        var cname = lineData[1];
        var ename = lineData[2];
        data.push({className:className,cname:cname,ename:ename})
    }
    JSONToExcelConvertor(data)
}


function JSONToExcelConvertor( data) {
    var  content = "班級,中文姓名,英文姓名\r\n";
    
     for (var i = 0; i < data.length; i++) {
        if(data[i].cname){
            content+=data[i].className+","+data[i].cname+","+data[i].ename+"\r\n";
        }
     }
     var uri = new Blob(['\ufeff' + content], {type:"text/csv"});
     
     if (window.navigator && window.navigator.msSaveOrOpenBlob) { // for IE
      window.navigator.msSaveOrOpenBlob(content, "下載的表格.csv");
     } else {
      var link = document.createElement("a");
      link.href = URL.createObjectURL(uri);
     
      link.style = "visibility:hidden";
      link.download = "下載的表格.csv";
      document.body.appendChild(link);
      link.click();
      document.body.removeChild(link);
     }
}
</script>
</html>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM