1. Expressões regulares em cordas
Use expressões regulares para pesquisar, extrair, segmentar, substituir e outras operações em strings. Os seguintes métodos especiais são fornecidos na classe String:
Matches booleanos (String regex): determina se a string corresponde à expressão regular especificada.
String replaceAll (String regex, substituição da string): Substitua todas as substringas que correspondam a Regex nesta string com a substituição.
String [] Split (String regex): use Regex como separador para dividir a string em várias substringas.
Todos os métodos especiais acima dependem de expressões regulares fornecidas pela Java.
2. Crie expressões regulares
x: caractere x (x pode representar qualquer caráter legal);
/0mnn: o caractere representado pelo número octal omnn;
/xhh: o caractere representado por hexadecimal 0xhh;
/uhhhh: caráter unicode representado por hexadecimal 0xhhhh;
/t: tab ('/u0009');
/n: caractere de nova linha (linha newline) ('/u000a');
/r: caractere de retorno de carruagem ('/u000d');
/f: quebra de página ('/u000c');
/a: símbolo de alarme (sino) ('/u0007');
/e: caractere de escape ('/u001b');
/cx: o controlador correspondente a x. Por exemplo, /cm corresponde a Ctrl-M. O valor x deve ser um de A ~ z ou a ~ z;
3. Personagens especiais em expressões regulares
$: Corresponda ao final de uma linha. Para corresponder ao próprio personagem $, use /$;
^: Combine o início de uma linha. Para corresponder ao próprio personagem ^, use / ^;
(): Marque as posições de início e final da subexpressão. Para corresponder a esses personagens, use /(e /);
[]: Usado para determinar as posições de início e final das expressões de suporte. Para corresponder a esses personagens, use /[e /];
{}: Usado para marcar a frequência da subexpressão anterior. Para corresponder a esses caracteres, use /{e /};
*: Especifica que a subexpressão anterior pode ocorrer zero ou mais vezes. Para corresponder ao próprio personagem *, use / *;
+: Especifica que a subexpressão anterior pode ocorrer uma vez ou mais vezes. Para corresponder ao próprio personagem +, use / +;
?: Especifica que a subexpressão anterior pode ocorrer zero ou uma vez. Para combinar com o próprio personagem, use /?;
.: Corresponda a qualquer caractere da unidade, exceto quebra de linha/n. Para combinar, o próprio personagem, use /.;
/: Usado para escapar do próximo personagem ou especificar caracteres octal ou hexadecimais. Para corresponder /caractere, use //;
|: Especifique qualquer um dos dois itens. Para corresponder ao próprio personagem, use /|;
4. Caracteres predefinidos
.: Pode corresponder a qualquer caractere;
/D: corresponda a todos os números de 0 ~ 9;
/D: combine não-numadores;
/s: corresponda a todos os caracteres de espaço em branco, incluindo espaços, guias, devolução do carro, quebras de página, quebras de linha, etc.;
/S: corresponda a todos os caracteres que não são do WhitaSpace;
/w: corresponda a todos os caracteres do Word, incluindo todos os números de 0 ~ 9, 26 letras em inglês e sublinhados (_);
/W: corresponder a todos os caracteres não-palavras;
5. Personagens de correspondência de limites
^: O começo da linha
$: O fim da linha
/b: limites da palavra
/B: limite não-palavras
/A: o início da entrada
/G: o final da partida anterior
/Z: o fim da entrada, apenas para o último personagem final
/z: o final da entrada
6. Símbolos representando o número de correspondências
A figura a seguir mostra os símbolos representando o número de correspondências, que são usadas para determinar o número de vezes que o símbolo aparece ao lado da esquerda do símbolo:
(1) Suponha que queremos procurar o número do Seguro Social dos EUA em um arquivo de texto. O formato desse número é 999-99-9999. A expressão regular usada para corresponder é mostrada na Figura 1. Nas expressões regulares, o hífen ("-") tem um significado especial, que representa um intervalo, como de 0 a 9. Portanto, ao combinar um hífen em um número de segurança social, deve ser precedido por um caractere de fuga "/".
(2) Suponha que, ao pesquisar, você espera que o hífen possa aparecer ou não-isto é, 999-99-9999 e 99999999999999 estão no formato correto. Neste momento, você pode adicionar o "?" símbolo de qualificação para quantidade após o hífen, como mostrado na figura:
(3) Vamos dar uma olhada em outro exemplo abaixo. Um formato para as placas de carros americanos são quatro números mais duas letras. Sua expressão regular é precedida pela parte do número "[0-9] {4}" e a parte da letra "[AZ] {2}". A figura a seguir mostra a expressão regular completa.
7. Alguns exemplos 1
função substituir (content) {var reg = '// [(// w+) //]', padrony = new regexp (reg, 'g'); Return Content.Replace (Pattern, '<img src = "img/$ 1.png">');} // ou função substituir (content) {return content.replace (// [(/w+) // g, '<img src = "img/$ 1.png">');}Exemplo 2
// zero larga olha por trás da solução alternativa // (? <= ...) e (? 'Foo.bar | baz'.replace (/(? <=/.) b/,' c ') Substitua imediatamente b por'. ' na frente dele com c'foo.bar | baz'.Reverse (). Substitua (/b (? =/.)/g, 'c'). reverse () //foo.car|baz//method 2: não use a afirmação de largura zero, (///). na frente para c'foo.bar | baz'.replace (/(/.)? b/, função ($ 0, $ 1) {return $ 1? $ 1 + 'c': $ 0;}) //foo.car|baz//simulate 'foo.bar | baz' o lugar (/(? <!/.) b/. '.bar | baz'.replace (/(/.)? b/, function ($ 0, $ 1) {return $ 1? $ 0:' c ';}) //foo.bar|caz//This é útil em alguns cenários relativamente simples e pode ser usado com a aparência //, no entanto, há muitos cenários que são que são invadidos, como o que são usados com a aparência, no entanto, há muitos cenários que são que são os que são usados. //'tttt'.replace(/guaExemplo 3
Uso de $ & símbolo
função escaperegexp (str) {return str.replace (/[abc]/g, "($ &)");} var str = 'a12b34c'; console.log (Escaperegexp (str)); // (a) 12 (b) 34 (c)