java和js中正则表达式的用法和区别

首先在java中,

1、匹配正则表达式使用matches

如string qq = 36786256;

s.matches("[1-9]\\d{4,10}");

2、也可以用matcher

Pattern  p = Pattern.compile("A\\d");//建立模式对象

Matcher m = p.matcher"gaha");

if(m.matches)

{

    System.out.println("完全匹配")

}

else

{

  System.out.println("不完全匹配")

}



在js中



java和js正则表达式的区别

首先

java中需要转义字符\\d

而js中直接用\d


附:


exec:对string进行正则处理,并返回匹配结果.array[0]为原字符串,array[i]为匹配在整个被搜索字符串中的位置。
test:测试string是否包含有匹配结果,包含返回true,不包含返回null。
match(pattern):根据pattern进行正则匹配,如果匹配到,返回匹配结果,如匹配不到返回null
search(pattern):根据pattern进行正则匹配,如果匹配到一个结果,则返回它的索引数;否则返回-1
replace(pattern,replacement):根据pattern进行正则匹配,把匹配结果替换为replacement
split(pattern):根据pattern进行正则分割,返回一个分割的数组
实例:
function checkForm() {
 

   var u =document.form_name.check.value;
    var s =/^[-a-zA-Z0-9_]+(\.[-a-zA-Z0-9_]+)*@[-a-zA-Z0-9_]+(\.[-a-zA-Z0-9_]+)*$/;
    var a =s.exec(u);
    var a =s.test(u);
    var a =u.match(s);
    var a =u.search(s);
   alert(a);
}
replace
最简单的算是能力就是简单的字符替换。示例代码如下:
 var u = "javascript is a good scriptlanguage";
 //在此我想将字母a替换成字母A
 var s = /a/g;
var a = u.replace(s,"A");

split



输出结果为:
How,are,you,doing,today?
H,o,w, ,a,r,e, ,y,o,u, ,d,o,i,n,g, ,t,o,d,a,y,?
How,are,you


   

  





你可能感兴趣的:(javascript,正则表达式)