Algunas operaciones de cadena y regularidades de js

< a href="javascript:sayhello('张三')"></a>
   eval("2+3")可以直接把字符串计算出来
   var d=new Date().getDay();
   switch (d)
{
    case 6:x="今天是星期六";
    break;
    case 0:x="今天是星期日";
    break;
    default:
    x="期待周末";
}
  document.getElementById("demo").innerHTML=x;
  str="strong";
 k=str.replace('/o/g',Q)  
 //把o转化成	Q, (ps:  /g 在正则表达式中全局匹配的意思)
 //k=strQng

Manipulación de cuerdas

var x = "JohnJohn"; // x es una cadena
y = x.charAt (2); // h
y = x.charCodeAt (2); // 104
y = x.concat (y, y); // JohnJohn104104, x + y + y
y = x.indexOf ('h'); // 2, el índice comienza desde 0
y = x.lastIndexOf ('h'); // 6
y = x.slice ();
y = x.split ('o'); // J, hnJ, hn
y = x.substr (2); // hnJohn
y = x.substring (2,4) // hn, [2,3]
y = x .toLocaleLowerCase (); // johnjohn, minúscula
y = x.toLocaleUpperCase (); // JOHNJOHN, mayúscula
y = x.toString (); // convertido a Stirng
y = x.toUpperCase (); // JOHNJOHN, mayúscula
y = x.trim (); // JohnJohn, elimina los espacios en ambos extremos
y = x.valueOf (); // devuelve el valor original de un objeto de cadena

Reglas de coincidencia regulares

^ Coincide con una entrada o el comienzo de una línea, / ^ a / coincide con "una A", pero no con "An a"
$ coincide con una entrada o con el final de una línea, / a $ / coincide con "An a", pero no no coincide con "una A"

  • Coincide con el metacarácter anterior 0 o más veces, / ba * / coincidirá con b, ba, baa, baaa
  • Coincide con el metacarácter anterior una o más veces, / ba * / coincidirá con ba, baa, baaa
    ? Coincidirá con el metacarácter anterior 0 o 1, / ba * / coincidirá con b, ba
    (x) coincidirá con x y guardará x en el nombre En las variables de $ 1… $ 9,
    x | y coincide con xoy
    {n} coincide exactamente con n veces
    {n,} coincide más de n veces
    {n, m} coincide con nm veces
    [xyz] juego de caracteres, coincide con este conjunto Cualquiera de los caracteres (o metacaracteres) en
    [^ xyz] no coincide con ninguno de los caracteres de este conjunto
    [\ b] coincide con un carácter de retroceso
    \ b coincide con un límite de palabra
    \ B coincide con una palabra sin límite
    \ cX Aquí, X es un carácter de control, / \ cM / coincide con Ctrl-M
    \ d coincide con un carácter, / \ d / = / [0-9] /
    \ D coincide con un carácter que no es un dígito, / \ D / = / [^ 0-9 ] /
    \ n coincide con un carácter de nueva línea
    \ r coincide con un retorno de carro
    \ s coincide con un carácter en blanco, incluidos \ n, \ r, \ f, \ t, \ v, etc.
    \ S coincide con un carácter que no está en blanco, igual a / [^ \ n \ f \ r \ t \ v] /
    \ t coincide con un carácter de tabulación
    \ v coincide con un carácter de tabulación directo
    \ w coincide con un carácter que puede formar una palabra (alfanumérico, esta es mi traducción gratuita, incluidos los números) , incluidos los guiones bajos, como [\ w] coincide con el 5 de "$ 5.98", que es igual a [a-zA-Z0-9]
    \ W coincide con un carácter que no puede formar una palabra, como [\ W] coincide " 5.98 & quot; 5.98 & quot; . 5 .. 9. 8 " en el igual [^ a-zA-Z0-9]

Usar prueba ()

El método test () es un método de expresión regular.

El método test () se utiliza para detectar si una cadena coincide con un patrón determinado. Si la cadena contiene texto coincidente, devuelve verdadero, de lo contrario, devuelve falso.

El siguiente ejemplo se utiliza para buscar el carácter "e" en una cadena:

实例1:
var patt = /e/;
patt.test("The best things in life are free!");
//字符串中含有 "e",所以该实例输出为:true

Utilice exec ()

El método exec () es un método de expresión regular.

El método exec () se usa para recuperar coincidencias de expresiones regulares en una cadena.

Esta función devuelve una matriz en la que se almacenan los resultados coincidentes. Si no se encuentra ninguna coincidencia, el valor de retorno es nulo.

El siguiente ejemplo se utiliza para buscar la letra "e" en una cadena:

实例1:
/e/.exec("The best things in life are free!");
//字符串中含有 "e",所以该实例输出为:e

El método search () usa expresiones regulares

实例2:
使用正则表达式搜索 "Runoob" 字符串,且不区分大小写:
var str = "Visit Runoob!"; 
var n = str.search(/Runoob/i);
//输出结果为:6

El método search () usa una cadena

search 方法可使用字符串作为参数。字符串参数会转换为正则表达式:
实例1:
检索字符串中 "Runoob" 的子串:
var str = "Visit Runoob!"; 
var n = str.search("Runoob");

El método replace () usa expresiones regulares

实例1:
使用正则表达式且不区分大小写将字符串中的 Microsoft 替换为 Runoob :
var str = document.getElementById("demo").innerHTML; 
var txt = str.replace(/microsoft/i,"Runoob");
//结果输出为:Visit Runoob!

El método replace () usa una cadena

replace() 方法将接收字符串作为参数:
var str = document.getElementById("demo").innerHTML; 
var txt = str.replace("Microsoft","Runoob");

ps:
Los parámetros de expresión regular se pueden usar en los métodos anteriores (en lugar de los parámetros de cadena).
Las expresiones regulares hacen que la función de búsqueda sea más poderosa (como no distingue entre mayúsculas y minúsculas en el ejemplo).

Regular de uso común
function    isDecimal(strValue )  {  
   var  objRegExp= /^\d+\.\d+$/;
   return  objRegExp.test(strValue);  
}  

验证身份证号码:
/^\d{15} | \d{18} | \d{17}[x X] $/

/*校验是否中文名称组成 */
function ischina(str) {
    var reg=/^[\u4E00-\u9FA5]{2,4}$/;   /*定义验证表达式*/
    return reg.test(str);     /*进行验证*/
}

/*校验是否全由8位数字组成 */
function isStudentNo(str) {
    var reg=/^[0-9]{8}$/;   /*定义验证表达式*/
    return reg.test(str);     /*进行验证*/
}

/*校验电话码格式 */
function isTelCode(str) {
    var reg= /^((0\d{2,3}-\d{7,8})|(1[3584]\d{9}))$/;
    return reg.test(str);
}

/*校验邮件地址是否合法 */
function IsEmail(str) {
    var reg=/^\w+@[a-zA-Z0-9]{2,10}(?:\.[a-z]{2,4}){1,3}$/;
    return reg.test(str);
}

Inserte la descripción de la imagen aquí


Confirmar la operación de la caja

  confirm 确认框
    if(confirm("are you ok?"){
           xxx
    }
    else{
          xxxx
    }

test.innerHTML:

Es decir, todo, desde la posición inicial hasta la posición final del objeto, incluidas las etiquetas Html.

El valor de test.innerHTML en el ejemplo anterior también es "test1 test2".

test.innerText:

El contenido desde la posición inicial hasta la posición final, pero elimina la etiqueta Html

El valor de text.innerTest en el ejemplo anterior también es "test1 test2", con la etiqueta span eliminada.

test.outerHTML:

Además de todo el contenido de innerHTML, también contiene la etiqueta del objeto en sí.

El valor de text.outerHTML en el ejemplo anterior es

prueba1 prueba2

Supongo que te gusta

Origin blog.csdn.net/weixin_43722571/article/details/98489859
Recomendado
Clasificación