正则表达式:
是一种专门用于操作字符串规则。
正则表达式:
通过一些符号来表达,简化对字符串的复杂操作。
弊端:阅读性较差
常见操作:
1.匹配 String matches(regex)
2.获取(查找):
1 Pattern , Matcher2 Pattern p = pattern.compile(regex);3 Matcher m = p.matcger(String);4 5 while(m.find)6 {7 System.out.PRintln(m.group());8 }
3.切割: String split (regex);
4.替换: String replaceAll(regex,str);
实例:
1 String regex = "//d{5,}";2 Pattern p = Pattern.compile(regex);3 Matcher m = p.matcher(String);4 5 while(m.find())6 {7 String s = m.group();8 s.replaceAll(regex,"#"); //替换为#9 }
5.网页爬虫:
通过忘了以及IO读取网页的源文件,并通过规则获取网页中的符合规则的数据。
比如Mail爬虫。
Strint mailreg = "[a-zA-Z0-9_]{6,12}@[a-zA-Z0-9]+(//.[a-zA-Z]+)+";
正则表达式中组的含义:将部分进行封装以便重用。//num反向引用制定组
-------------------------------------------------------------------------------
1.1Javascript入门---函数
escape函数:
语法:escape(charstring)//charstring参数是要编码的string对象。
个人理解为对非ASCII字符都进行十六进制编码,例如“%20”。
字符值大于255的用%uxxx格式存储。
unescape函数:
语法:unescape(charstring)//charstring参数是要解码的string对象。
所有以%xx十六进制形式的编码都用字符ASCII字符集中等价的字符代替。
eval函数:
语法:eval(codestring)
codestring是有效的JS代码,这个字符串将有JS分析器进行分析和执行。
PS:eval允许JS源代码上动态执行。
例如,下面的代码创建了包含Date对象的新变量mydate:
eval("var mydate=new Date();");
传递给eval方法的代码执行时的上下文和调用eval的方法一样。
1.2javascript入门---自定义函数
可以创建自己的函数,用来需要的地方调用,一个函数定义由一个function和javascript代码组成
具体语法如下:
function 函数名()//无参函数
{
函数代码;
}
实例:
function add()
{
sum=1+2;
alert(sum);
}
定义好了,该如何调用呢?其实可以通过很多方法来进行调用。
这里用比较简单的方法---按钮的单击事件:
1 <html> 2 <head> 3 <title>JS的函数调用</title> 4 <script typt="text/javascript"> 5 function add() 6 { 7 sum=1+2; 8 alert(sum); 9 }10 </script>11 </head>12 <body>13 <p>14 <button value="sum" onclick="add()">点击按钮</button>15 </p>16 </body>17 </html>
带参函数格式:
function 函数名(参数1,参数2,参数3...)
{
函数代码;
}
实例:
1 function add(x,y)2 {3 sum=x+y;4 alert(sum);5 }
x,y是add函数的两个参数,调用函数的时候,可以通过这两个参数把两个加数传递给函数。
例如:add(3,4)会求3+4的和
具体实例如下:
1 <html> 2 <head> 3 <title>带参函数的调用方法</title> 4 <script type="text/javascript"> 5 function add(x,y) 6 { 7 sum=x+y; 8 alert(sum); 9 }10 </script>11 </head>12 <body>13 <p>14 <botton value="add" onclick="add(3,4)"></botton><!--输出的结果就会为:7-->15 </p>16 </body>>17 </html>
2.1 常用对象
一组包含数据的属性和对属性中包含数据进行操作的方法,称为对象。
比如要设置网页的背景颜色,锁针对的对象就是document,所用的属性就是bgcolor,
即:document.bgcolor="blue",表示背景的颜色为蓝色。
2.1.1 字符串对象
1.转义字符串:
在JS中,有一些特殊的字符串对象,主要包括引号、回车符号、换行等等。下面列出这些字符串的常用方法:
双引号,/"
单引号,/'
反斜杠,//
退格,/b
Tab,/t
换行,/n
回车,/r
走纸换页,/f
在编写JS中,通过反斜杠加上特殊字符就实现了特殊字符在页面中表现的方法
实例:
<html><head><title>转义字符的引用</title></head><body><p align="left">转义字符的引用</p><script type="text/javascript">a="大哥/"我错了/"";alert(a);</script></body></html>
2.字符串对象的定义
var s="这是我的训练基地";
定义了s之后,就有了一个字符串对象,可以访问他的长度属性(length),这个属性是不需要定义的
他是一个内置属性,访问的方式如下:
alert(s.length)
1 <html> 2 <head> 3 <title>length属性的使用</title> 4 </head> 5 6 <body> 7 <script type="text/javascript"> 8 var s="这是我的训练基地"; 9 alert(s.length);10 </script>11 </body>12 </html>
3.字符串对象的方法
toUpperCase()方法
用法:将字符串转换为大写
code区域:
1 <script type="text/javascript">2 var txt="hello,Word!";3 document.write(txt.toUpperCase());4 </script>
oLowerCase()方法
用法:将字符串转换为小写
code区域:
1 <script type="text/javascript">2 var txt="HELLO,WORD!";3 document.write(txt.toLowerCase());4 </script>
组合,同时输出大写和小写:
code区域:
1 <body> 2 <p align="left">转义的引用</p> 3 <script type="text/javascript"> 4 yuju="THIS IS A DOG"; 5 document.writeln("大写:") 6 document.writeln(yuju); 7 re=yuju.toLowerCase() 8 document.writeln("<br>小写:"+re); 9 </script>10 </body>
“+”加法
code:
1 <body>2 <p align="left">转义的引用</p>3 <script type="text/javascript">4 a="我是XXX,";5 b="我现在一年级了";6 document.write(a+b);7 </script>8 </body>
2015年1月23日
CharAt
该方法从字符串中返回一个字符,这个方法应用的时候,通常会设置一个起始位置的参数,然后传回
位于该字符串对象位置的字符值。
在使用的时候字符串起始位置为0.
语句:
String.charat(index)//其中index表示返回的字符位置
code:
1 <script>2 yuju="妈妈说好了";3 cd=yuju.charAt(2);4 alert(cd);5 </script>
indexOf
该方法从一个特定的位置开始查找设置字符、返回一个字符或是字符串上的位置值,如果是在特定的位置
找不到用户设置的字符串对象,则返回-1,这在利用JS设置查找数据的格式化过程中非常有用,在后面的
综合部分,系统常利用该方法来检索和数据检验的工作。
其中的用法:
string1.indexof(string2.index)
其中string2表示需检索的字符串值,是必须的!index表示可选的整数参数,规定在字符串中开始检索的位置
它的合法取值是0~string1object.length-1
查找也是从0开始记位
code:
1 <script>2 yuju="字符串对象";3 cd="对象";4 re=yuju.indexOf(cd);5 document.write(re);6 ls=yuju.indexOf(cd,5);//表示0-5的位置7 document.write("<br>"+ls);8 </script>
lastindexof
该方法和上面的方法使用一样,只是该方法从字符串对象尾部开始搜索。将上面的例子稍加改动即可体验:
PS:如果文中存在两个字符相同的,便会记录最后一个字符串的位置。
索引序列都是都是从左到右(起始值0)
indexof是从左向右查,而lastindexof是从右向左差
code:
1 <script>2 yuju="字符串对象";3 cd="字";4 re=yuju.lastIndexOf(cd);5 document.write("<br>"+re);6 </script>
substring
该方法为字符串截取方法,在设置的时候一般会设置两个参数指定截取的位置,然后将两个参数间的字符串返回给
设置的变量。当两个变量相等的时候,就会返回一个空字符串。在涉及的运行中,一般可以不管参数的大小和前后
的位置,它截取的顺序都是从最小的参数开始,截取到最大的位置。如果没有指定最后的参数,系统默认截取末尾。
语法:
string.substring(start,stop)
其中,start必须有,是一个非负的整数,规定要提取的字符串的第一个字符在string的中位置,stop可选,是一个
非负数的整数,比要提取的字符串的最后一个字符在string中的位置多1,如果省略了返回的字符串会一直到末尾。
1 <script>2 yuju="字符串对象";3 cd="字";4 re=yuju.substring(0,2);5 document.write(re);6 </script>
anchor
利用该方法在页面中创建和显示一个HTML超文本目标。在利用该方法的时候,必须在文档中建立一个锚点,然后调用write方法
在文档中写出该连接锚点,达到在页面中快速定位目的。
语法:
string.anchor(anchorname)
code:
1 <body>2 <p align="left">字符的<a href="#aaa">引用</a></p>3 <script>4 zifu="this is achor"5 aaa=zifu.anchor("aaa")6 document.write(aaa);7 zifu.anchor(a);8 </script>9 </body>
big
该方法将字符转换为大字体格式,在功能的实现上,与HTML的<big>一样,在页面中显示时,会将设置的字符串对象大号显示。
语法:
string.big(stringname)
code:
1 <body>2 <p align="left">字符的引用</p>3 <script>4 zifu="您好";5 document.write(zifu);6 aaa=zifu.big("aaa");//个人理解为string为大多少stringname就为多少7 document.write(aaa);8 </script>9 </body>
bold
该方法将设置文本粗体显示。在功能的实现中与HTML标签中的<b>相似。这些方法实质是JS格式的控制语言。
语法:
string.bold()//无参函数
code:
1 <body>2 <p align="left">字符的引用</p>3 <script>4 zifu="您好";5 document.write(zifu);6 aaa=zifu.big("aaa");7 document.write(aaa);8 </script>9 </body>
扩展:
1 <script> 2 aaa="字符的引用"; 3 anc=aaa.bold(); 4 document.write(anc); 5 anc1=aaa.italics(); 6 document.write("<br>"+anc1); 7 anc2=aaa.sub(); 8 document.write("<br>"+anc2); 9 anc3=aaa.sup();10 document.write("<br>"+anc3);11 anc4=aaa.fontsize(5);12 document.write("<br>"+anc4);13 anc5=aaa.fontcolor("blue");14 document.write("<br>"+anc5);15 </script>
2.2.1 Date对象
date对象保存从1970年1月1日0时0分0秒0毫秒记录时间的毫秒值。在JS中创建的语法有三种
1.无参函数
var dt=new date();
当使用这种方式创建的时候,日期对象保存是系统的当前时间。
2.通过值创建
var dt=new date(dateVal);
这种方式表示创建一个指定时间,dateVal可以是一个数字,也可以是一个字符串。如果是
数字,表示日期从1970年1月1日0时0分0秒0毫秒加上dataval;如果是字符串,如“2008-8-8”
也可以是d1=new data("8-8,2008 11:13:00"),表示指定的时间,当然使用这种方式必须符合
日期的格式。
3.通
新闻热点
疑难解答