Atitit 发帖机实现(2)---usrQBN2243 文本解析到对象协议规范
Atitit 发帖机实现(2)---usrQBN2243 文本解析到对象协议规范
文本内容
###注释
标题:标题标题标题标题标题1
人数:5
月薪:2000-3000
内容:
内容内容内
容内容内容内容1
var cmd=' ';
cmd+=' $("input[name=\'title\']").val("@title@"); $("input[name=\'need_num\']").val("@need_num@"); ';
cmd+=' $("input[name=\'category_url\']").val("@category_url@"); $("input[name=\'price\']").val("1"); ';
cmd+=' $("#id_description").val("@id_description@"); $("input[name=\'need_num\']").val("@need_num@"); ';
var mapper="标题:title,人数:need_num,月薪:2000-3000,内容:id_description";
var s="###注释\r\n标题:tti标题标题标题标题标题\r\n人数:5\r\n月薪:2000-3000\r\n内容:\r\n内容内容内111\r\n容内容内容内容222\r\n";
function artTxt2obj(s)
{
var a=s.split("\r\n");
var o={};
var cache="";
var k="";
for(var i=0;i<a.length;i++)
{
var line=a[i];
if(line.indexOf("#")==0)
continue;
//var a1=line.split(":");
var idx=line.indexOf(":");
if(i==0)
{
k=line.substr(0,idx);
cache=line.substr(idx+1);
continue;
}
if( line.indexOf(":")>0) //caontains
{
if(k.length>0)
o[k]=cache;//finish last pre yg ..
k=line.substr(0,idx);
cache=line.substr(idx+1);
continue;
// k=line.substr(0,idx);
//var v=line.substr(idx+1);
//o[k]=v;
//cache=line.substr(idx+1);
}else
{
cache=cache+line+"\r\n";
}
}
if(k.length>0)
o[k]=cache; //last item.
//alert(JSON.stringify(o));
return o;
}
function SmpTxt2json(s)
{
var o={};
var a=s.split(",");
for(var i=0;i<a.length;i++)
{
var a2=a[i].split(":");
o[a2[0]]=a2[1];
}
return o;
}
function fmtObj(cmd,mapper,o){
var maper_obj=SmpTxt2json( mapper );
for(var itemx in o)
{
var key_in_str=maper_obj[itemx];
cmd=cmd.replace("@"+key_in_str+"@",o[itemx]);
}
return cmd;
}
var o=artTxt2obj(s);
alert(fmtObj(cmd,mapper,o));
作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 )
汉字名:艾提拉(艾龙), EMAIL:1466519819@qq.com
转载请注明来源: http://www.cnblogs.com/attilax/
--Atiend
Atitit 发帖机实现(2)---usrQBN2243 文本解析到对象协议规范的更多相关文章
- Atitit 发帖机系列(8)  词法分析器v5 版本新特性说明)
		
Atitit 发帖机系列(8) 词法分析器v5 版本新特性说明) v5 增加对sql单引号的内部支持.可以作为string 结构调整,使用递归法重构循环发..放弃循环发. V4 java dsl词 ...
 - Atitit 发帖机系列(6) USRQBN2201 setup spec安装程序的实现规范与标准化解决方案
		
Atitit 发帖机系列(6) USRQBN2201 setup spec安装程序的实现规范与标准化解决方案 安装主要解决一个问题,就是resin的内容启动路径以及端口..这里是使用的端口8077 主 ...
 - Atitit 发帖机系列(7) 词法分析的方法attilax大总结)
		
Atitit 发帖机系列(7) 词法分析的方法attilax大总结) 1.1. 词法分析貌似俩大方法,一个直接根据状态图转换,一个根据dfa1 1.2. switchcase或者ifelse 最原始方 ...
 - Atitit 发帖机实现(4 )- usbQBM1601 gui操作标准化规范与解决方案attilax总结
		
Atitit 发帖机实现(4 )- usbQBM1601 gui操作标准化规范与解决方案attilax总结 1.1. 根据gui的类型使用不同的gui调用api1 1.2. Script化1 1.3. ...
 - Atitit   发帖机实现(3 )---usrQBN023 js提交ajax内容到后端规范与标准化
		
Atitit 发帖机实现(3 )---usrQBN023 js提交ajax内容到后端规范与标准化 大段内容务必要替换转义换行符号1 提交务必使用utf编码,否则解码后的可能缺失,是web serv ...
 - Atitit  发帖机实现(1)-----UsrQBm2008 页面上下文规范
		
Atitit 发帖机实现(1)-----UsrQBm2008 页面上下文规范 1.1. 网站绝对路径,页面绝对路径1 1.2. Java的javax.servlet.ServletContext1 ...
 - Atitit  自动化gui 与 发帖机 技术
		
Atitit 自动化gui 与 发帖机 技术 1.1. Gui tech1 1.2. 自动化软件测试1 1.3. selenium attilax1 1.4. 图形脚本语言Sikuli1 1.5. ...
 - Atitit. Atiposter 发帖机 新特性 poster new feature   v7 q39
		
Atitit. Atiposter 发帖机 新特性 poster new feature v7 q39 V8 重构iocutilV4,use def iocFact...jettyUtil V ...
 - Atitit. Atiposter 发帖机 新特性 poster new feature v11  .docx
		
Atitit. Atiposter 发帖机 新特性 poster new feature v11 .docx 1.1. 版本历史1 2. 1. 未来版本规划2 2.1. V12版本规划2 2.2. ...
 
随机推荐
- 1996: [Hnoi2010]chorus 合唱队
			
链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1996 Description Input Output Sample Input 4 1701 ...
 - html 页面内锚点定位及跳转方法总结
			
第一种方法,也是最简单的方法是锚点用<a>标签,在href属性中写入DIV的id.如下: <!DOCTYPE html><html><head> < ...
 - 小JAVA大世界之程序建模跳蚤实验
			
package com.chigoe;//房子类class House { private int m;// 保存行数 private int n;// 保存列数 private int[][] a; ...
 - Windows和linux的文件共享(1)
			
今天是我学习linux以来第一次写博客.带着一种激动心情我开始尝试着去完成第一篇博客.从易到难.所以第一次我就主要学习了Windows之间的文件共享. Window之间的文件共享是通过局域网实现的.局 ...
 - maven工程pom.xml文件解读
			
maven的核心是pom.xml,POM(Project Object Model,项目对象模型)定义了项目的基本信息,用于描述如何构建,声明项目依赖.以Hello World项目为例,创建一个hel ...
 - fcc
			
function spinalCase(str) { if(str.split(/\W|_/).length==1){ for(var i=0;i<str.length;i++){ if(/[A ...
 - 通过json数据进行传递调用
			
最近在弄andriod的程序,需要调用web服务器上的数据,服务采用C#写的,并部署在iis服务器上.我们可以像.NET那样调用服务那,利用andriod库自带的HttpPost和HttpGet类来调 ...
 - MATLAB-octave中平面向量场图的可视化
			
quiver,平面向量场图 [x, y, z] = peaks(20); [u, v] = gradient(z); contour(x, y, z, 10); hold on, quiver(x,y ...
 - 20151012 C# 第一篇 字符与字符串
			
20151012 字符与字符串: Char.String等类来表示 字符类Char 1. 字符类Char 表示一个 Unicode 字符,(Unicode字符是计算机通用的字符编码,对不同语言中的每个 ...
 - 网页加载图片原理<转>
			
http://www.haorooms.com/post/web_http_request 图片的http请求,有很多种情况,那么究竟什么情况下面不会发生请求呢?下面我用案例一一列举一下,希望对你深入 ...