java和JavaScript 正则区别

JavaScript

 var myReg = /^\d+$/;
    if (!myReg.test(eleval)){
      alert("修改内容需要是数字!");
    }

其中JavaScript中其和正则表达式中的元字符一样,不需要转义。因为在JavaScript中其定义就是一个正则表达式类型。其有一些方法可以使用。

java

String str="%nihaofd12  在干吗%";
str=str.replaceAll("\\d+","\\\\%");
System.out.println(str);

执行结果为java和JavaScript 正则区别_第1张图片

正则表达式必须是字符串,并且特殊字符必须要转义如 \需要"\\\\"四个反斜杠,还有 | . " ' %等 而且要在前加两个\\

在regex中"\\"表示一个"\",在java中一个"\"也要用"\\"表示。这样,前一个"\\"代表regex中的"\",后一个"\\"代表java中的"\"。所以要想使用replaceAll方法将字符串中的反斜杠("\")替换成空字符串(""),则需要这样写:str.replaceAll("\\\\","");


在oracle中

select * from shop s where s.short_name like '%\\\%%' escape '\'
这样表示

你可能感兴趣的:(java和JavaScript 正则区别)