首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >规范化空白和其他纯文本格式例程

规范化空白和其他纯文本格式例程
EN

Stack Overflow用户
提问于 2010-03-12 19:35:36
回答 3查看 962关注 0票数 2

背景:

语言是JavaScript。目标是找到一个库或预先存在的代码来执行低级别的纯文本格式设置。

我可以自己写,但为什么要重新发明轮子呢?问题是:很难确定是否有“轮子”存在,因为对JavaScript库的任何搜索都会带来大量以HTML为中心的东西。我不一定对HTML感兴趣,只对文本感兴趣。

示例:

我需要一个JavaScript函数来改变这一点:

在此之前

代码语言:javascript
运行
复制
nisi ut aliquip | ex ea commodo consequat duis |aute irure dolor in
esse cillum dolore | eu fugiat nulla pariatur |excepteur sint occa
in culpa qui | officia deserunt mollit anim id |est laborum

..。进入这个..。

之后:

代码语言:javascript
运行
复制
nisi ut aliquip    | ex ea commodo consequat duis    | aute irure dolor in      
esse cillum dolore | eu fugiat nulla pariatur        | excepteur sint occa
in culpa qui       | officia deserunt mollit anim id | est laborum              

问题:

它是否存在,一个以非html-web开发为中心的JavaScript库,它具有在分隔的纯文本中对空格进行规范化、对纯文本进行合理设置和间距的功能?

的基本原理:

研究在程序员的文本编辑器中使用的JavaScript。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-10-27 16:48:19

内置的String方法实际上是低级的,但是您可以基于它们构建自己的方法。为了简化这个任务,您可以使用现有的字符串操作库(如underscore.string ),或者至少在那里获得一些灵感。

下面是在Firefox 36和Chrome 43中测试的示例问题的解决方案:

http://jsfiddle.net/46a7bexs/7/

其基本思想是将整个文本分割成一个行数组,然后在每个|字符上拆分它们(同时去掉空格),并将所有内容存储在一个类似于表的变量中(实际上是一个二维数组)。

在接下来的步骤中,它遍历所有的“单元格”,并计算出每列的最大字符串长度。

最后,将条目填充到最大的列宽,并将其连接回gether。

我确信可以用更少的代码和更高的效率来完成它,但是由于没有人发布解决这个问题的方法,我想我可以共享我的直接代码。

票数 1
EN

Stack Overflow用户

发布于 2010-03-12 21:39:49

我从来没有听说过,因为你的尝试可能不太受欢迎。

您可能必须基于JavaScript内置字符串函数构建自己的函数。

票数 1
EN

Stack Overflow用户

发布于 2010-03-12 19:51:35

当然,大部分内容都适合在浏览器中使用,但本质上,任何函数添加到字符串原型中的内容都应该对您有所帮助。请看一下这里的一些功能:

http://code.delacap.com/p/js-methods/docs/string.html

然后你可以添加你自己的:

代码语言:javascript
运行
复制
String.prototype.myFunc = function(){ 
    //...
};

"someStr".myfunc(); 
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2435301

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档