Precisa de um freelancer, códigos-fonte e exemplos completos?
Bem-vindo(a) ao meu site. Além de realizar alguns serviços como freelancer eu tenho alguns códigos-fonte e exemplos completos de Java, Delphi, PHP, Python, C/C++, Hibernate, JPA, Spring, JSP, Servlets, Ruby, Ruby On Rails e muitas outras linguagens e frameworks. Veja como falar comigo clicando aqui.
 
Arquivo de Códigos - Página Inicial
Códigos-fonte
» Códigos-fonte e exemplos completos
Linguagens
» ActionScript
» Adobe AIR
» Adobe Flex
» AJAX
» C
» C#
» C++
» CSS
» Delphi
» DHTML - Dynamic HTML
» HTML/XHTML
» Java
» JavaFX
» JavaScript
» Java Servlets
» JSP - Java Server Pages
» Perl
» PHP
» PHP-GTK
» Python
» Ruby
» Tcl/Tk
» VB.NET
Bancos de Dados
» IBM DB2
» MySQL
Frameworks
» CodeIgniter
» jQuery
» JSF - Java Server Faces
» Qt
» Ruby On Rails
» Struts
» Struts 2
» wxWidgets
» Zend Framework
Container/Servidor
» Apache Tomcat
» Apache Web Server
Ferramentas
» Apache Ant
» iTextSharp (iText#)
Referências
» CSS1 e CSS2
» JavaScript
Serviços On-Line
» Qual é meu IP?
» Tabela Cores HTML I
» Tabela Cores HTML II
» Lista de Mime Types
» Códigos Teclas Virtuais
Usuários On-Line
Visitantes: 88
PHP
O que há de novo no PHP 5?
40 dicas e truques sobre como trabalhar com datas e horas em PHP
60 dicas e truques sobre como trabalhar com strings e caracteres em PHP
PHP e a Orientação a Objetos - POO (Curso Completo)

DHTML
Curso completo de DHTML para iniciantes

CSS
Como definir uma imagem de fundo fixa na página
Definindo uma imagem de fundo para botões HTML
Você está aqui: Inicio -> Tutoriais -> JavaScript
Expressões Regulares em JavaScript :: Alternativas e agrupamento de padrões
Haverá ocasiões em que suas expressões regulares exigirão construções especiais a fim de alcançar um determinado resultado. Duas destas construções são o agrupamento e alternativas de padrões. Veja a tabela seguinte antes de escrevermos alguns exemplos:

Símbolo
Descrição
Exemplo
( )
Agrupa caracteres para criar uma cláusula. Pode ser aninhado. /(abc)+(def)/ encontra uma ou mais ocorrências de "abc" seguida(s) por uma ocorrência de "def".
|
Oferece alternativa para o padrão. É similar a uma instrução "OU".
/(ab)|(cd)|(ef)/ encontra "ab" ou "cd" ou "ef".

A tabela acima nos mostra que é possível usar parênteses para agrupar caracteres e criar uma clausula. Veja novamente o trecho de código que escrevemos para verificar se um número de CPF era válido:

var pesquisa = /^\d{3}.\d{3}.\d{3}-\d{2}$/;

Veja que temos dois grupos idênticos repetidos:

\d{3}.\d{3}.

Ora, veja um versão usando parênteses para agrupar estes dois grupos:

(\d{3}.){2}

Veja que bastou colocar o grupo entre parênteses e especificar quantas vezes ele deveria ocorrer. O padrão completo ficaria assim:

var pesquisa = /^(\d{3}.){2}\d{3}-\d{2}$/;


Agora, suponhamos que você tenha que validar uma string no formato XXX.XXX.XXX.XXX, onde o X representa uma letra do alfabeto maiúsculo. A melhor forma é usar:

var pesquisa = /^([A-Z]{3}.){3}[A-Z]{3}$/;

Veja como usamos os parênteses para especificar que um caractere de A à Z deveria aparecer três vezes:

[A-Z]{3}

e ser seguido por um ponto:

[A-Z]{3}.

Em seguida, este grupo deve aparecer três vezes:

([A-Z]{3}.){3}


Para finalizar, o símbolo $ indica que a string deve terminar com três caracteres de A à Z:

[A-Z]{3}$

Simples demais. Vamos ver agora como fornecer alternativas de padrões. Suponhamos que você desenvolveu um sistema que aceita URLs nos formatos "http://www.recomende.com", "http://recomende.com" ou "www.recomende.com". Tal expressão poderia ser escrita assim:

var pesquisa = /^(http:\/\/www.)|(http:\/\/)|(www.)/;

Veja como usamos a barra "|" para oferecer alternativas ao padrão. Veja o exemplo completo:

<script type="text/JavaScript" language="JavaScript">
  var pesquisa = /^(http:\/\/www.)|(http:\/\/)|(www.)/;

  var URL = "http://www.recomende.com";

  if(URL.match(pesquisa))
    alert("A URL é válida");
  else
    alert("A URL não é válida");
</script>
Este tutorial contém as seguintes seções:
  1. Introdução
  2. Entendendo as expressões regulares
  3. Usando o objeto global RegExp
  4. Primeiros passos na autoria de expressões regulares
  5. Os sinalizadores global e de não-distinção entre maiúsculas e minúsculas
  6. Uso de caracteres literais
  7. Definição de posições dos itens da pesquisa
  8. Classes de caracteres
  9. Padrões de repetições em expressões regulares
  10. Alternativas e agrupamento de padrões
  11. Como remover espaços duplicados de uma string usando expressões regulares
  12. Implementando uma função trim usando expressões regulares
  13. Uso de expressões regulares para transformar em maiúsculas as primeiras letras de cada palavra em uma string
 
 
Arquivo de Códigos - Página Inicial
Veja dicas, truques e anotações de PHP
Efetuando cálculos de porcentagem em PHP
Como efetuar uma conexão PHP com o MySQL
Como renomear diretórios usando PHP
Usando o laço for em PHP
Onde os dados das sessões PHP são guardados?
Obter todo o conteúdo dos parâmetros passados a uma página usando GET
Como remover tags HTML e PHP de uma string
Código completo: Como listar os campos de uma tabela, seus tipos e detalhes adicionais
Provocar quebras de linhas em uma string
Entendendo o tipo de dados array do PHP
Veja dicas, truques e anotações de outras linguagens
ActionScript - Usando um laço for para percorrer todos os elementos de um array
Java - Como embaralhar os elementos de uma ArrayList
Java - Detectando eventos do teclado em uma JFrame
Java - Obter a cor de fundo das células selecionadas em uma JTable
Java - Como usar o método read() da classe ImageIO para carregar uma imagem em um BufferedImage
Python - Como obter o nome do mês no formato longo
PHP-GTK - Disparando ações quando o mouse entra ou sai da área de um GtkButton
Delphi - Aprenda a usar a variável global ShortDateFormat para controlar a formatação de datas
Zend Framework - Obtendo o dia do mês com dois dígitos
Adobe Flex - Como excluir o item selecionado em um ComboBox

       

http://www.arquivodecodigos.net
:: Arquivo de Códigos - Softwares e Consultoria em Programação ::
Todo o conteúdo deste site, quando não devidamente observado, pertence a seus idealizadores e não
poderá ser usado para outras finalidades senão estudo e aprimoramento de técnicas de programação.
Certifique-se de ler as notas legais antes de proceder com o acesso e leitura do
conteúdo disponibilizado nestas páginas.

Fale Conosco: (62) 3261-7018 / (62) 8185-0734

Desenvolvedor Responsável: Osmar J. Silva

Página Inicial Contatos Pesquisar Mapa do Site