动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Java教程 ]的信息

本月文章推荐
.WebLogic Server 9.0 应用配置管.
.Java URL编程.
.用于正则表达式的抽象Java .
.一个象棋手机游戏的源代码.
.创建 JSF Web 项目和页面模板(1.
.Java中异常机制的研究.
.[JAVA100例]034、读写文件(字符操.
.WSDL 2.0 成为W3C候补.
.Java的声音处理介绍.
.应用Mustang里新的启动画面功能.
.轻松掌握Java泛型(第4部分).
.通过socket传递java对象(对象序列.
.JavaDoc,在 Java 的注释上做文章.
.java分页源码.
.Java传说之风云再起.
.Mustang与Rhino:Java 6中的脚本.
.编写高效的线程安全类.
.VisualBasic.Net引人注目的语言革.
.Java程序设计之“对象”篇.
.我常用的邮件发送类.

Javascript实例教程(17) 使用字符串函数

发表日期:2008-1-5 |


字符串对象提供了许多方法,但是很少的程序设计人员充分利用它们,这对于一个程序员来说,不能不说这是一种缺陷。字符串提供的方法可以用于操作字符、产生Html标签以及搜索字符串等等。

下面首先说说什么是字符串。在javascript语言中,字符串就是一种对象。就象在Java中,它们不是作为一系列的字符被存储的,所以字符串的操作必须使用内置的构造器和设置函数来完成。在后来的版本中有了字符串构造器和更多的关于对象的概念。在这个层次上说,字符串是由字母而不是数字组成的变量,这就是字符串的概念。

举个例子,一些有效的字符串为"Hello", "Bob", "Bob2", "33", "33.3",而33或者33.3就不是字符串了。所有的字符串有一个共同的属性,称为长度,这个长度返回了字符串中字符的个数。

最常用的字符串方法是:indexOf()、charAt()和substring()。因为这几个方法在JavaScript中经常出现,所以下面我对它们进行具体说明:

indexOf()函数

这个函数答应你判定一个字符串是否存在于一个更长的字符串中以及它所处的位置。它等价于C语言中的strstr函数以及Visual Basic语言中的inStr函数。这个方法也有一个相应的函数:lastIndexOf(),这个函数字符串的另外一端搜索。

就象函数的名字所意味的,返回数值表明字符串在所搜索字符串中的位置。假如在被搜索的字符串中没有找到要查找的字符串就返回-1。这里要注重,在JavaScript中-1是一个普通的整数,而不是一个布尔型(Boolen)的数。以下是具体例子:

var myString = "Have a nice day!";

alert(myString.indexOf("a")); //这里返回1

alert(myString.lastIndexOf("a")); // 这里返回 13

这里还需要再提醒一次,在JavaScript中的数组的索引是从0开始,这跟C语言是遗言的。所以上面的语句alert(myString.indexOf("a"))是返回1,因为”a” 处于字符串"Have a nice day!"的第二个位置。

细心一点,你可能会发现字符串"Have a nice day!"还有一个字符"a",那怎么才能找到第二个字母"a"呢?这是一个很好的问题,为了做到这一点,我们必须再介绍这个函数的第二个参数。第二个参数是一个整数,它指示了字符串中开始搜索的位置。

为了综合以上的知识,下面对代码进行一些来找到所有字符"a",具体代码如下:

var myString = "Have a nice day!";

var index = myString.indexOf("a");

while (index != -1) {

alert(index);

index = myString.indexOf("a", index + 1);
// start search after last match found

}

下面具体解释一下这段代码:变量index被初始化为第一个"a"所在的位置(假如没有"a",那么变量index就为-1)。然后再给出一个循环,条件是index!=-1。在每次的循环中,我们将变量index加1,即从找到的"a"后面第一个字符开始继续查找,直至将所有的字符"a"找到为止。当再也没有字符"a"在字符串变量mySring中找到的时候,就返回-1值,此时index就等于-1,不满足循环条件index!=-1,故导致循环结束。而alert(index)语句的输出为:1,5,13。

在这个例子中我们只是展示indexOf()进行单一字符的搜索。假如你经常使用这个函数,你会发现它可以搜索任意的字符或者字符串。

charAt()函数

这个函数返回在字符串中字符处在给定的位置。从本质上讲,它是substring()方法的一个特例,但是它也有自己的用途。假如你原来是个C语言程序员或者其它相近的语言的程序员,那么你就能理解当引用字符的时候,可以利用string.charAt(index)来代替string[index]。

下面我们来在一个表单输入中使用这个函数。表单中有email地址,当然这个email地址要限制为字符、数字以及一个"@"符号。我们可以一次性讲字符串分列为单个字符来对它进行强制。具体代码如下:

<SCRIPT language="JavaScript"> <!-- Hide from older browsers

var parsed = true;

var validchars = "abcdefghijklmnopqrstuvwxyz0123456789@.-";

var email = prompt("What is your email address?", "nobody@nowhere.com");

for (var i=0; i < email.length; i++) {

var letter = email.charAt(i).toLowerCase();

if (validchars.indexOf(letter) != -1)

continue;

alert("Invalid character: " + letter);

parsed = false;

break;

}

if (parsed) alert("Your email address contains all valid characters.");

// Stop hiding -->

</SCRIPT>

Javascript实例教程(17) 使用字符串函数

(图1)

如图1所示。你可以按下”check Email”按钮,此时就会弹出一个对话框,如图2所示。

Javascript实例教程(17) 使用字符串函数

(图2)

你可以在上面随便填入一个email地址,然后点击”确定”键。接着还会弹出一个检查Email地址的结果。加入你输入email地址:purple@pconline.com.cn之后,你就会看到如图3所示的结果。假如你输入:ok#pconline.com.cn就会出现如图4所示的结果,因为#是一个无效的字符。

Javascript实例教程(17) 使用字符串函数

(图3)

Javascript实例教程(17) 使用字符串函数

(图4)

以下将具体解释上面这段代码:

以上的例子使用了一些字符串的函数、循环语句以及Boolean(布尔)运算。所有的这些在前面的教程中都有提及,当然除了toLowerCase()函数,这个函数下面再介绍。

以上的代码实际上很简单,只不过是想测试一下email地址中的每一个字符是不是一个有效的字符而已 。但是实现过程看起来有点笨拙,不象C语言或者Perl语言那样简单。从本质上讲,我们是使用charAt()来循环浏览email地址的字符串以提取出无效的字符。

假如字符是有效的,那就继续循环;假如字符是无效的,就会弹出一个警告窗口说明那个字符是无效的,此时在设置parsed=false之后使用break语句来结束for循环。

当循环存在,我们可以检查标志parsed看是否email是有效的。假如parsed为true,那么消息将被显示。

点击此处去测试页面
substring()函数

这个函数通常使用于提取字符串的任何部分。它的参数是'start' 和'end'。开始的数值是第一个字符的索引,结束数值是返回部分之后的第一个字符的索引。你可能听起来会觉得云里雾里的,但是一个最好的记忆方法是:返回字符串的长度等于end-start。

假如第二个参数省略了,那么它默认为直到字符串的结束。下面是几个例子:

var str = "This is a string";

str.substring(1, 3); //结果为hi

str.substring(3, 1); //结果为hi

str.substring(0, 4); //结果为This

str.substring(8); //结果为hi

str.substring(8, 8); //结果为空

上面的第二个例子是说明了当start>end的时候,那么这两个参数自动转换.最后的例子显示了:当start等于end的时候,返回数值为空字符串。

字符格式(HTML)

下面介绍JavaScript中最少使用的函数。虽然它们并不是十分有用,但至少它们为你的代码增加一些装饰。这些方法从字符对象中创建HTML代码用于显示在网页上。


上一篇:后向引用 人气:382
下一篇:Javascript实例教程(15) 日期函数 人气:522
浏览全部Java的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-8-21 Nucleus v3.33 多国语言版
2008-8-21 HDWiki v4.0 bulid 080821 UTF-8
2008-8-21 明科在线客服系统 v6.0
2008-8-21 KesionCMS v5.0.2 正式版 utf-8
2008-8-21 KesionEshop v5.0.2 正式版 utf-8
2008-8-21 HDWiki v4.0 bulid 080821 GBK
2008-8-21 新文互动酷站展示系统 v1.5
2008-8-21 Punbb v1.2.20 多国语言版
2008-8-21 QQ头像网 beta
2008-8-16 iLaba Player(小喇叭播放器) v2.
2008-8-16 DoubleClickFix 鼠标双击修正工具
2008-8-16 CrystalCPUID 4.15.2.451
2008-8-16 VeryCD 电驴(easyMule) 1.0.4 Bu
2008-8-16 uTorrent 1.8 Build 11813 - Sta
2008-8-16 比特精灵(BitSpirit) v3.3.2.287
2008-8-16 StayInTune音叉 v1.0 破解版
2008-8-16 iChing《周易》汉化补丁 v1.0
2008-8-16 Starmap星空图v1.0汉化破解版
  发表评论
姓 名: 验证码:
内 容:
[ 汉字翻译拼音 ] [ 广告代码 ] [ 符号对照表 ] [ 进制转换 ] [ 经典小工具 ] [ 个税计算 ] [ 汉字简繁转换 ] [ 普通单位换算 ] [ 公制单位换算 ]
[ 生辰老黄历 ] [ 国内电话区号 ] [ 国家代码与域名缩写 ] [ 文字加密解密 ] [ 健康查询 ] [ 万年历 ] [ 手机号码查询 ] [ ip搜索 ] [ Google PR查询 ]
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号