以下是正则表达式的属性:
字符 含义
_________________________________________
i 执行大小写不敏感的匹配
g 执行一个全局的匹配,简而言之,就是找到所有的匹配,而不是在找到第一个之后就停止了
_________________________________________
除属性 g 和 i 之外,正则表达式就没有其它像属性一样的特性了.如果将构造函数 RegExp 的静态属性 multiline 设置为 true ,那么模式匹配将以多行的模式进行.在这
种模式下,锚字符 ^ 和 $ 匹配的不只是检索字符串的开头和结尾,还匹配检索字符串内部的一行的开头和结尾.例如: 模式 /Java$/ 匹配的是 "Java",但是并不匹配
"Java\nis fun" .如果我们设置了 multiline 属性,那么后者也将被匹配:
RegExp.multiline = true;
在JAVASCRIPT里面判断一个字符串是否是电子邮件的格式:
if(formname.email.value!=formname.email.value.match(/^\w +[@]\w +[.][\w.] +$/))
{
alert("您的电子邮件格式错误!");
formname.email.focus();
return false;
}
[RED]function dateVerify(date){
var reg = /^(\d{4})(-)(\d{2})\2(\d{2})$/;
var r = date.match(reg);
if(r==null) return false;
var d= new Date(r[1], r[3]-1,r[4]);
var newStr=d.getFullYear()+r[2]+(d.getMonth()+1)+r[2]+d.getDate();
date=r[1]+r[2]+((r[3]-1)+1)+r[2]+((r[4]-1)+1);
return newStr==date;
}[/RED]
|
| javascript的17种正则表达式 |
| 作者: 不祥 时间: 2004-6-9 |
"^\\d+$" //非负整数(正整数 + 0) "^[0-9]*[1-9][0-9]*$" //正整数 "^((-\\d+)|(0+))$" //非正整数(负整数 + 0) "^-[0-9]*[1-9][0-9]*$" //负整数 "^-?\\d+$" //整数 "^\\d+(\\.\\d+)?$" //非负浮点数(正浮点数 + 0) "^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$" //正浮点数 "^((-\\d+(\\.\\d+)?)|(0+(\\.0+)?))$" //非正浮点数(负浮点数 + 0) "^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$" //负浮点数 "^(-?\\d+)(\\.\\d+)?$" //浮点数 "^[A-Za-z]+$" //由26个英文字母组成的字符串 "^[A-Z]+$" //由26个英文字母的大写组成的字符串 "^[a-z]+$" //由26个英文字母的小写组成的字符串 "^[A-Za-z0-9]+$" //由数字和26个英文字母组成的字符串 "^\\w+$" //由数字、26个英文字母或者下划线组成的字符串 "^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$" //email地址 "^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$" //url | |
| JavaScript中的正则表达式(2) |
|
|
|
作者 :中国论坛网收集 来源 :http://www.51one.net 加入时间 :2004-8-25 |
|
正则表达式对象的属性及方法 预定义的正则表达式拥有有以下静态属性:input, multiline, lastMatch, lastParen, leftContext, rightContext和$1到$9。其中input和multiline可以预设置。其他属性的值在执行过exec或test方法后被根据不同条件赋 以不同的值。许多属性同时拥有长和短(perl风格)的两个名字,并且,这两个名字指向同一个值。(JavaScript模拟perl的正则表达式) 正则表达式对象的属性
| 属性 |
含义 |
| $1...$9 |
如果它(们)存在,是匹配到的子串 |
| $_ |
参见input |
| $* |
参见multiline |
| $& |
参见lastMatch |
| $+ |
参见lastParen |
| $` |
参见leftContext |
| $'' |
参见rightContext |
| constructor |
创建一个对象的一个特殊的函数原型 |
| global |
是否在整个串中匹配(bool型) |
| ignoreCase |
匹配时是否忽略大小写(bool型) |
| input |
被匹配的串 |
| lastIndex |
最后一次匹配的索引 |
| lastParen |
最后一个括号括起来的子串 |
| leftContext |
最近一次匹配以左的子串 |
| multiline |
是否进行多行匹配(bool型) |
| prototype |
允许附加属性给对象 |
| rightContext |
最近一次匹配以右的子串 |
| source |
正则表达式模式 |
| lastIndex |
最后一次匹配的索引 | | 正则表达式对象的方法
| 方法 |
含义 |
| compile |
正则表达式比较 |
| exec |
执行查找 |
| test |
进行匹配 |
| toSource |
返回特定对象的定义(literal representing),其值可用来创建一个新的对象。重载Object.toSource方法得到的。 |
| toString |
返回特定对象的串。重载Object.toString方法得到的。 |
| valueOf |
返回特定对象的原始值。重载Object.valueOf方法得到 | | 例子 <script language = "JavaScript"> var myReg = /(w+)s(w+)/; var str = "John Smith"; var newstr = str.replace(myReg, "$2, $1"); document.write(newstr); </script> 将输出"Smith, John" |