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中

<script>

function dochecked()
{

    var pattern = /^\d+[.]?\d+$/;   //前面加上^后面加上$  表示这句话要完全匹配。

    var vf1 = document.queryForm.f2Text.value; //文本框

    var va1 = document.queryForm.a2.checked;     //单选按钮 

    if(va1){

    if(!patrn.test(vf1))

  {

    //这里使用exec方法匹配,对string进行正则处理,并返回匹配结果.array[0]为原字符串,array[i]为匹配在整个被搜索字符串中的位置
      alert("有误");

      return;

    }

else

{

  alert("成功");

}
}

</script>


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");
</script>
split

<script type="text/javascript">
var str="How are you doing today?"
document.write(str.split(" ") + "<br/>")
document.write(str.split("") + "<br/>")
document.write(str.split(" ",3))
</script>

输出结果为:
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


   

  





  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

EmineWang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值