JavaScript正则表达式和级联效果
1、正则表达式(regular expression)
是一种字符串匹配的模式,用来检查一个字符串中是否包含指定模式的字符串。
2、正则表达式的创建
var reg = /white/; var reg = new RegExp("white","g");
3、正则表达式的修饰符
g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。
i 不区分大小写
m 多行匹配
4、正则表达式符号
方括号:方括号用于查找某个范围内的字符
[abc] 查找方括号之间的任何字符。
[^abc] 查找任何不在方括号之间的字符。
[0-9] 查找任何从 0 至 9 的数字。
[a-z] 查找任何从小写 a 到小写 z 的字符。
[A-Z] 查找任何从大写 A 到大写 Z 的字符。
[A-z] 查找任何从大写 A 到小写 z 的字符。
[adgk] 查找给定集合内的任何字符。
[^adgk] 查找给定集合外的任何字符。
(red|blue|green) 查找任何指定的选项。
元字符:元字符(Metacharacter)是拥有特殊含义的字符
/…/ 代表一个模式的开始和结束
^ 匹配字符串的开始
$ 匹配字符串的结束
\s 任何空白字符
\S 任何非空白字符
\d 匹配一个数字字符,等价于[0-9]
\D 除了数字之外的任何字符,等价于[^0-9]
\w 匹配一个数字、下划线或字母字符,等价于[A-Za-z0-9_]
\W 任何非单字字符,等价于[^a-zA-z0-9_]
. 除了换行符之外的任意字符
正则表达式重复字符(量词)
{n} 匹配前一项n次
{n,} 匹配前一项n次,或者多次
{n,m} 匹配前一项至少n次,不能超过m次
匹配前一项0次或多次,等价于{0,}
+ 匹配前一项1次或多次,等价于{1,}
? 匹配前一项0次或1次,也就是说前一项是可选的,等价于{0,1}
5、RegExp对象的属性
global RegExp对象是否具有标志g,它声明了给定的正则表达式是否执行全局匹配。
ignoreCase RegExp对象是否具有标志i,它声明了给定的正则表达式是否执行对大小写不敏感的匹配。
multiline RegExp对象是否具有标志m,它声明了给定的正则表达式是否执行多行匹配。
6、RegExp对象的方法
1、exec 检索字符中是正则表达式的区配,返回找到的值,并确定其位置
exec()
exec() 方法检索字符串中的指定值。返回值是被找到的值。如果没有发现匹配,则返回 null。
例子 1
var patt1=new RegExp("e"); document.write(patt1.exec("The best things in life are free")); 由于该字符串中存在字母 "e",以上代码的输出将是 e
2、test 检索字符串中指定的值,返回true或false
test()
test() 方法检索字符串中的指定值。返回值是 true 或 false。
例子
var patt1=new RegExp("e"); document.write(patt1.test("The best things in life are free")); 由于该字符串中存在字母 "e",以上代码的输出将是 True
7、分析(邮箱验证) var reg=/^\w+@\w+.[a-zA-Z]{2,3}(.[a-zA-Z]{2,3})?$/;
//正则表达式创建
^ 字符串开始
$字符串结束
\w任意字符字母和数字,下划线
+ 表示前一个字符出现{1,},一次或多次。
@ 普通字符串
\w 任意字符串
. 除了换行符之外的任意字符 .
[a-zA-Z]
{2,3}
(.[a-zA-Z]{2,3})?
常用正则
用户名正则/^[a-zA-Z][a-zA-Z0-9]{3,15}$/
密码正则/^[a-zA-Z0-9]{4,10}$/
生日正则/^((19\d{2})|(200\d))-(0?[1-9]|1[0-2])-(0?[1-9]|[1-2]\d|3[0-1])$/
Email正则/^\w+@\w+(\.[a-zA-Z]{2,3}){1,2}$/
邮政编码/^\d{6}$/
手机号码/^1\d{10}$/
8、String对象的方法
match 找到一个或多个正则表达式的匹配
search 检索与正则表达式相匹配的值
replace 替换与正则表达式匹配的字符串
split 把字符串分割为字符串数组
9、select对象常用事件、方法和属性.
1、事件 onchange 当改变选项时调用的事件
2、方法 add() 向下拉列表中添加一个选项
示例
var province=document.getElementById("selProvince").value; var city=document.getElementById("selCity"); city.options.length=0; switch(province){ case "河南省": city.add(new Option("郑州市","郑州市"),null); city.add(new Option("洛阳市","洛阳市"),null); break; …… }
3、属性:
options[] 返回包含下拉列表中的所有选项的一个数组
selectedIndex 设置或返回下拉列表中被选项目的索引号
length 返回下拉列表中的选项的数目
示例
function get(){ var index=document.getElementById("fruit").selectedIndex; var len=document.getElementById("fruit").length; var show=document.getElementById("show"); show.innerHTML="被选选项的索引号为"+index+"<br/>下拉列表选项数目为"+len; }
4、Option对象常用属性:
text设置或返回某个选项的纯文本值
value设置或返回被送往服务器的值
10、数组常用的属性和方法。
属性 length 设置或返回数组中元素的数目
方法
join( ) 把数组的所有元素放入一个字符串,通过一个的分隔符进行分隔
sort( ) 对数组的元素进行排序
读取二维数组中的元素值
var cityList = new Array(); cityList['河北省'] = ['邯郸市','石家庄市']; cityList['河南省'] = ['郑州市','洛阳市']; cityList['湖北省'] = ['武汉市','宜昌市']; for(var i in cityList){ document.getElementById("show").innerHTML+=i+"<br/>"; } for(var j in cityList){ for(var k in cityList[j]){ document.getElementById("show").innerHTML+=cityList[j][k]+" ”; } document.getElementById("show").innerHTML+="<br/>“; }
以上所述是长沙网络推广给大家介绍的JavaScript_正则表达式和级联效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,长沙网络推广会及时回复大家的。在此也非常感谢大家对狼蚁SEO网站的支持!
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程