Criando Getters e Setters com Expressões Regulares
Uma das coisas mais legais das Expressões Regulares é poder utilizá-las em diversos lugares para as mais diversas funções.
Mostrarei como utilizá-las para criar métodos de acesso (getters, setters ou simplesmente as propriedades do .NET), os exemplos servem para Java e C# mas é muito provável que seja possível adaptá-los para outras linguagens também.
É verdade que IDEs já fazem isso, mas tem um problema no Visual Studio: nativamente, só é possível fazer com um atributo por vez.
Primeiro começamos com a criação dos atributos:
1: private String strNome;
2: private int intIdade;
3: private float fltSalario;
Notem que estou utilizando lowerCamelCase para o nome das variávies e isso é importante para o funcionamento da expressão utilizada. Também vale citar que a expressão regular tem que ser executado como case-sensitive.
E agora a expressão regular que irá casar com cada atributo (para utilizar no Visual Studio substitua “\S” por “:a” e os parênteses por chaves):
private +(\S+) +([a-z]+([A-Z]\S*));
Ela quer dizer:
- a palavra “private”;
- seguida de um ou mais espaços;
- seguidos de um ou mais de caracteres visíveis;
- seguidos de um mais espaços;
- seguido de um conjunto de uma ou mais letras minúsculas;
- seguidas de uma letra maíuscula;
- seguida de outro conjunto vazio ou não de caracteres visíveis
- seguido de um ponto-e-vírgula
Agora o texto utilizado como substituição:
public \1 \3 { get { return \2; } set { \2 = value; } }
ou
public void set\3(\1 valor) { \2 = valor; } public \1 get\3(){ return \2; }
Nesse caso os retrovisores terão os seguintes valores:
- \1 = tipo do atributo
- \2 = nome do atributo
- \3 = nome da propriedade (atributo sem o prefixo do tipo)
Com isso é possível fazer essa criação de maneira rápida e com todos os atributos de uma vez.
Para tal basta utilizar a funcionalidade de Localizar\Substituir das próprias IDEs que aceitem RegExp ou mesmo outras ferramentas como o Notepad++ e o RegEx Tester.

Leia Também
@luizgrs