首 页 网络编程
网页制作 图形图象 操作系统 冲浪宝典
软件教学 认证考试

网络安全 网络办公 行业资讯 评测对比
您当前位置:站长天空 -> 认证考试-> 软件水平考试
【director教程】解析文本和列表_director教程
作者:网友供稿 点击:0
推荐
西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金
站内搜索
文章页数:[1] 
(只是想为多媒体的发展尽一份力。以下是翻译director online 上的一篇关于解析文本和列表的文章,觉得简单有用,所以给大家共享。动机单纯。-------alalala)


  问题:
  我有一个名为“fonts”的域和如下的文本。

  [\"MezzMM_375 RG\", \"MezzMM\", \"Cottonwood\", \"Lithos Regular\", \"Minion_
Condensed\", \"Minion Ornaments\", \"Poetica ChanceryI\", \"Utopia\", \"Viva_
BoldExtraExtended\", \"Viva Regular\", ...\"SurethingSymbols\", \"Zephyr\"]

  (这是简化了的。原件有一百多名字)

  我需要将其转换为按字母顺序排列的有序列表(不是程序列表),看上去应该是这样:

Arial
ArialBlack
ArialNarrow
BookAntiqua
BookmanOldStyle
BookshelfSymbol1
...
Wingdings
Woodcut
Xcast
ZapfElliptBT
Zephyr

  这样看来,我需要删除引号,逗号和括弧,将逗号替换为换行。


  回答:
  我之所以选择你的问题主要有两个原因。第一,再没有比理解如何处理文本这个概念更为有用的了。我几乎记不记来有多少次我使用这种技巧来处理类似这样的处理外部文本文件,核实用户输入等。

  第二点,你的问题指出一个事实,好的开发者用lingo来帮助自己编辑。我们将要做的其实是一个编辑工具-------也许永远不会在程序运行中使用。这种类型的编辑器能节省你大量的时间。更重要的是它可以帮助你避免手动的输入数据题条目。

  现在,我们来解释一下。我们需要做两件事。按字母顺序排列列表和处理不想要的字符。让我们从区别lingo 列表和字符串开始。在lingo中,字符串是包括在引号任何顺序的字节。同样的字符串能够出现在域中,然而域只能保留字符串,所以你并不需要用引号把字符串引起来。

  你应该习惯看到扩在括弧里的列表。就象这样:


set mylist=[#cat,#dog,#bird]
put mylist
-------[#cat,#dog,#bird]

  在这个列表里,我列出了三个symbol格式的条目(用#开头)。现在,我将把这个列表导入到一个域中(假定我有一个名为“animals”的域)

  put mylist into field “animals”

  现在,这个名为“animals”的域看上去会象这样

  [#cat,#dog,#bird]

  但是这会出现一个麻烦的情况:如果我试图把这域“animals”中的文字返回到头一个列表中。


Set mylist=the text of field “animals”
Put mylist
----“[#cat,#dog,#bird]”

  有什么不同?注意这次显示的结果是字符串-----看见引号了吗?这意味着我们不能再将它视作列表了。我不再能对它进行任何常规列表的操作。然而,我们可以很容易的将它从字符串再转换回列表来。既然”animals”中的字符还是正确的列表语法规则(有括号和逗号),我这样做:


set mytext=the text of field “animals”
set mylist=value(mytext)
put mylist
----[#cat,#dog,#bird]

  voila!(瞧!----作者使用了法语)通过使用value语句,我们把字符串转为了列表。

  我花了这么大的精力来解释这两者的不同是因为我们要将数据同时作为字符串和列表处理。为什么呢?我们需要将它作为字符串以便进行字节的搜索,替换,删除等操作。另一方面我们需要它作为列表以便作sort()的操作。

  我们开始编码,将输入域中的文字置入到变量“thesring”中。接下来,我们将字符串转换为叫“thelist”的列表。现在,它是列表了,我们可以用”sort thelsit”来排序了。现在列表顺序排好了,我们需要将它导回字符串,通过使用sring()的命令。


On parsefield whichfield

Set thestring=the text of field whichfield
Set thelist=value(thestring)
Sort thelist
Set thestring=string(thelist)
Set howmany=the number of chars in thestring

Repeat with I=howmany down to 1
Case char I of thestring of
“,”: put return into char I of thestring
return,quote,space,”[“,”]”: delete char I of thestring
end case
end repeat

put thestring into field whichfield
end

  剩下的只是一个简单的从最后一个字符到第一个字符的处理。试一下是否括弧,空格,引号或是逗号都被转换了。注意我是运用了lingo语句return,quote,和space

  当我们处理完整个子串,我们将它置回域中。

  总是将文本置入变量,在变量中处理字符,再把变量置回域中。我不知为什么,但它引人注目的快。


文章整理:站长天空 网址:http://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

文章页数:[1] 


放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·省市联动菜单的源代码实现(access数据库版)-ASP教程,数据库相关
·【HTML】打开页面时按照指定的URL直接跳转到另一新页面-ASP教程,脚本编码
·多功能DataGrid打印类(WinForm C#)-.NET教程,C#语言
·我也来谈WEB打印。-ASP教程,打印相关
·C#中的泛型 (From dotNet SDK 2.0 Beta1)-.NET教程,C#语言
·J2EE WEB层的曙光 -- JSF-JSP教程,J2EE/EJB/服务器
·C#:获得文件版本信息及只读文件的删除-.NET教程,C#语言
·[ASP.NET]按键跳转以及按Enter以不同参数提交,及其他感应事件-.NET教程,Asp.Net开发
·谈基于.net平台windows开发中的模式窗体-.NET教程,.NET Framework
·ASP.NET 2.0 中实现 Treeview 与数据库的绑定(含代码)-.NET教程,Asp.Net开发
最新文章
·中文版windows xp系统升级sp3新鲜体验_windows xp
·十个提高windows vista系统性能的秘密_windows vista
·用搏客blog月收入200美圆_网赚技巧
·google 禁止使用在线广告宣传adsense推介_网赚技巧
·做广告联盟的站长必读规则_网赚技巧
·刘润:用c2c模式运作捐献公益组织_站长访谈
·seo资料站长丘仕达访谈:整站优化心得_站长访谈
·易被忽视的优化网站设计的五种方法_站长心得
·photoshop非主流照片:可爱红脸蛋美女_photoshop教程
·如何让网民爱上你的网站?(1)_站长心得
相关主题
  • 【director教程】lists的使用一则_director教程
  • 【director教程】属性列表应用一则_director教程
  • 【director教程】创建随机列表_director教程
  • 【director教程】匹配精灵游戏_director教程
  • 【director教程】图片缩放_director教程
  • 西部数码虚拟主机

    友情链接
    CNNIC 西部数码
    万网 自助建站
    虚拟主机 asp空间
    域名注册 域名
    域名申请 主页空间
    论坛空间 网站空间
    国际域名 虚拟空间
    空间租用 DDOS防火墙
    成都主机托管 四川主机托管
    主机租用 服务器租用
    网站目录 自助建站
    虚拟主机 网址大全
    软件下载
    自助链接
    虚拟主机资讯 特价虚拟主机
    版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
    关于我们:站长天空:专业提供最新的站长资讯、在线教程、虚拟主机权威评测、虚拟主机性能对比、网站制作教程,开发教程,站长工具。包括网页制作教程、冲浪宝典、编程参考、操作系统、软件教学、行业动态等。
    特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
    发表评论 打印  刷新     关闭