需要处理大量的非规范类内容信息到数据库表。如下:
如何快速操作呢?
主要code:
async function Excel(info) {
if (!info.files) {
return;
}
var freader = new FileReader();
const getfile = () => new Promise(resolve => {
freader.onload = function (e) {
var einfo = XLSX.read(e.target.result, {type: 'binary'});//读取二进制
resolve(XLSX.utils.sheet_to_json(einfo.Sheets[einfo.SheetNames[0]]));
};
freader.readAsBinaryString(info.files[0]);
});
let filejson = await getfile();
//table
var re1 = /(\d{1,3})+(?:\.\d+)?/g
var re2 = /[\u4e00-\u9fa5]{1,4}/g
var div = document.getElementById('div');
var vi = '<table>';
for (i = 0; i < filejson.length; i++) {
if (filejson[i].content.length > 0) {
var values = filejson[i].content.split(',');
for (t = 0; t < values.length; t++) {
if(values[t].length>0){
vi += '<tr>';
vi+= '<td>'+filejson[i].idcode+'</td>';
var str=values[t];
vi+= '<td>'+str.match(re2)+'</td>';
vi+= '<td>'+str.match(re1)+'</td>';
vi+='</tr>';
}
}
}
}
vi += '</table>';
div.innerHTML=vi;
}
其他方法:
一、若信息比较规范则使用分列。
二、若信息不规范,使用方法二。
1、先拷贝到TXT中。
2、在excel中处理:
相关js:
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <script src="http://www.shicishu.com/down/xlsx.full.min.js"></script> <script src="http://www.shicishu.com/down/jquery-3.6.0.min.js"></script>