您的位置:首页 > 产品设计 > UI/UE

UE编辑器下简单把 excel格式的表格转换为wiki支持的表格

2014-06-19 22:26 369 查看
觉得 wiki下(mediawiki)导入excel和word表格好麻烦,微软自带的offic插件wiki转换工具一直都安装不上。。。

为了更新wiki内容只能手动来做了后来总结了以下手动方法:

1、复制编辑好的Excel表格到记事本 用ue打开

2、替换“^p”(换行)为:
“

|-
|
”

3、替换“	”(TAB键)为:
“
||
”
4、删除最后一个空格

5、文本第一个字符处添加头,粘贴如下字符
{| class="wikitable"
|-
|

6、结尾处添加
}


后来觉得简单的操作UE有脚本就够了是不?

不过发现网上的脚本不多。。。替换的有,但是还要涉及正则表达式。。。从来没有用过JS脚本的我就用最笨的办法写了个脚本。参考网上的两个例子,一个是打印到文本,一个是查找的。。

有些方法完全是瞎蒙测试猜到的:



UltraEdit.activeDocument.top(); //把光标移至文本的最顶端
推出

UltraEdit.activeDocument.bottom(); //把光标移至文本的最末端




UltraEdit.activeDocument.findReplace.find(str_f);  //查找字符串 str_f
推出

UltraEdit.activeDocument.findReplace.replace(str_f, str_r); //替换字符串


脚本文件:

ue编辑器中复制excel转换wiki格式脚本.js

/***********************第一次替换***************************/

UltraEdit.activeDocument.top(); //把光标移至文本的最顶端

var str_f = "^P"; //要搜索的字符串
var str_r = "^P|-^P| ";

UltraEdit.activeDocument.findReplace.replace(str_f, str_r); //替换字符串
while (UltraEdit.activeDocument.isFound()) //如果找到要查询的字符串,则执行下面程序
{
UltraEdit.activeDocument.findReplace.replace(str_f, str_r);; //再一次替换
}

/***********************第二次替换***************************/

UltraEdit.activeDocument.top(); //把光标移至文本的最顶端
str_f = "^t"; //“^t”就是TAB了
str_r = " || ";

//UltraEdit.activeDocument.findReplace.find(str_f);  //查找字符串 str_f
UltraEdit.activeDocument.findReplace.replace(str_f, str_r);
while (UltraEdit.activeDocument.isFound()) //如果找到要查询的字符串,则执行下面程序
{
UltraEdit.activeDocument.findReplace.replace(str_f, str_r);; //再一次替换
}

/***********************添加头尾***************************/

UltraEdit.activeDocument.top(); //把光标移至文本的最顶端
UltraEdit.activeDocument.write("{| class=\"wikitable\"^p|-^p|");

UltraEdit.activeDocument.bottom(); //把光标移至文本的最末端
UltraEdit.activeDocument.write("}MY_FLAG_END_UE");  //在这里添加一个FLAG是不知道跳到末行的方法,不如直接设置一个flag,下一步把这个FLAG连同之前的空格一起替换了

/***********************第三次替换***************************/

UltraEdit.activeDocument.top(); //把光标移至文本的最顶端
str_f = " }MY_FLAG_END_UE"; //要搜索的字符串
str_r = "}";

//UltraEdit.activeDocument.findReplace.find(str_f);  //查找字符串 str_f
UltraEdit.activeDocument.findReplace.replace(str_f, str_r);
if (!UltraEdit.activeDocument.isFound()) //如果没有找到要查询的带空格字符串,则执行下面不带空格的替换
{
UltraEdit.activeDocument.findReplace.replace("}MY_FLAG_END_UE", str_r);; //再一次替换
}


在UE编辑器->脚本->脚本 中添加这个脚本 之后在 脚本 下就有这个脚本了。

使用方法就是:

1、把excel的内容复制到UE中,当然 合并单元格的不能用这个脚本



2、点击 脚本->ue编辑器中复制excel转换wiki格式脚本.js 开始自动替换



3、等待替换完全,将替换完的文本粘贴到wiki上保存即可



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: