Funções de string awk

Funções de string awk

A AWK é uma poderosa ferramenta de processamento de texto que é comumente usada para manipular e analisar dados em ambientes UNIX e Linux. Uma das principais características do AWK é sua capacidade de manipular strings usando uma grande variedade de funções internas.

Neste artigo, exploraremos algumas das funções de manipulações de cordas mais usadas em Awk.

  • comprimento (string): Retorna o comprimento da string especificada.
  • substr (string, start, comprimento): Retorna uma substring da string especificada, começando na posição especificada e com o comprimento especificado.
  • índice (string, substring): Retorna a posição da primeira ocorrência da substring especificada na sequência especificada.
  • dividido (string, matriz, separador): Divide a string especificada em uma matriz de substrings, usando o separador especificado para determinar onde dividir a string.
  • sub (regexp, substituição, string): Isso substitui a primeira correspondência de expressão regular que ocorre com a string com "substituição".
  • gsub (regexp, substituição, string): Substitui todas as ocorrências da expressão regular especificada na string especificada pela string de substituição especificada.
  • Match (string, regexp): Pesquisa a sequência especificada para a primeira ocorrência da expressão regular especificada e retorna a posição da partida e o comprimento da substring correspondente em uma matriz.
  • tolower (string) e toupper (string): Converte todos os caracteres maiúsculos ou minúsculos na sequência especificada em caracteres minúsculos ou maiúsculos, respectivamente.

Vamos entender todas as funções de string uma a uma, incluindo o exemplo:

1. comprimento (string)

O comprimento (string) função retorna o comprimento da string especificada. Por exemplo, se queremos encontrar o comprimento da corda "Olá Mundo!”, Podemos usar o seguinte código:

Awk 'Begin Print Comning ("Hello, mundo!") ''
1Awk 'Begin Print Comning ("Hello, mundo!") ''

Isso será lançado "13", Desde a string “Olá, mundo!”Tem 13 caracteres.

2. substr (string, start, comprimento)

O substr (string, start, comprimento) Função retorna uma substring da string especificada, começando na posição especificada e com o comprimento especificado. Por exemplo, se queremos extrair os 5 primeiros caracteres da string "Olá Mundo!”, Podemos usar o seguinte código:

awk 'BEGIN PRINT SIBRIR ("Hello, mundo!", 1, 5) '
1awk 'BEGIN PRINT SIBRIR ("Hello, mundo!", 1, 5) '

Isso será lançado "Olá", Como os 5 primeiros caracteres da string são "Olá".

3. índice (string, substring)

O índice (string, substring) Função retorna a posição da primeira ocorrência da substring especificada na sequência especificada. Por exemplo, se queremos encontrar a posição da substring “mundo” na string “Olá, mundo!”, Podemos usar o seguinte código:

awk 'BEGIN Print Index ("Hello, mundo!", "Mundo")'
1awk 'BEGIN Print Index ("Hello, mundo!", "Mundo")'

Isso será lançado "8", Desde que a substring “mundo” começa na 8ª posição na string.

4. dividido (string, matriz, separador)

O dividido (string, matriz, separador) A função divide a sequência especificada em uma matriz de substringas, usando o separador especificado para determinar onde dividir a string. Por exemplo, se queremos dividir a corda "Apple, banana, laranja" em uma variedade de substringas usando a vírgula como separador, podemos usar o seguinte código:

awk 'BEGIN Split ("Apple, banana, laranja", a ","); para (i em a) imprima um [i] '
1awk 'BEGIN Split ("Apple, banana, laranja", a ","); para (i em a) imprima um [i] '

Isso será lançado:

Saída maçã banana laranja 

5. sub (regexp, substituição, string)

O sub (regexp, substituição, string) A função substitui a primeira ocorrência da expressão regular especificada na sequência especificada com a sequência de substituição especificada. Por exemplo, se queremos substituir apenas as primeiras ocorrências da letra "O" na string "Olá, mundo!”Com a letra“ A ”, podemos usar o seguinte código:

Awk 'Begin sub ("O", "A", "Hello, World!"); imprimir'
1Awk 'Begin sub ("O", "A", "Hello, World!"); imprimir'

Isso será lançado “Hella, mundo!”, Desde que apenas a primeira ocorrência da letra "O" foi substituída pela letra "a".

6. gsub (regexp, substituição, string)

A função Gsub (Regexp, Substituição, String) substitui todas as ocorrências da expressão regular especificada na sequência especificada com a sequência de substituição especificada. Por exemplo, se queremos substituir todas as ocorrências da letra "O" na string "Olá, mundo!”Com a letra“ A ”, podemos usar o seguinte código:

Awk 'Begin Gsub ("O", "A", "Hello, World!"); imprimir'
1Awk 'Begin Gsub ("O", "A", "Hello, World!"); imprimir'

Isso produzirá “Hella, Warld!", Já que todas as ocorrências da letra" O "foram substituídas pela letra" a ".

7. Match (string, regexp)

O Match (string, regexp) A função procura a sequência especificada para a primeira ocorrência da expressão regular especificada e retorna a posição da correspondência e o comprimento da substring correspondente em uma matriz. Por exemplo, se queremos encontrar a posição e a duração da primeira ocorrência da palavra "mundo" na string "Olá, mundo!”, Podemos usar o seguinte código:

Awk 'Begin Match ("Hello, mundo!", /World /); imprima rstart, rlength '
1Awk 'Begin Match ("Hello, mundo!", /World /); imprima rstart, rlength '

Isso será lançado "8 5", Desde que a palavra "mundo" começa na 8ª posição na corda e tem um comprimento de 5 caracteres.

8. tolower (string) e toupper (string)

O tolo (string) A função converte todos os caracteres maiúsculos na sequência especificada em caracteres minúsculos, enquanto a função Toupper (String) converte todos os caracteres minúsculos na sequência especificada em caracteres maiúsculos. Por exemplo, se queremos converter a string “Olá, mundo!”Para todas as letras minúsculas, podemos usar o seguinte código:

awk 'Begin print tolower ("Olá, mundo!") ''
1awk 'Begin print tolower ("Olá, mundo!") ''

Isso será lançado "Olá Mundo!”.

Da mesma forma, se queremos converter a mesma string em todas as letras maiúsculas, podemos usar o seguinte código:

awk 'Begin imprima toupper ("Olá, mundo!") ''
1awk 'Begin imprima toupper ("Olá, mundo!") ''

Isso será lançado "OLÁ MUNDO!”.

Conclusão

Neste artigo, exploramos algumas das funções de manipulações de cordas mais usadas em Awk. Essas funções nos permitem executar uma ampla variedade de tarefas, como encontrar o comprimento de uma corda, extrair substringas, procurar padrões, dividir strings em matrizes e converter texto em diferentes casos. Ao dominar essas funções, podemos nos tornar mais proficientes em trabalhar com dados de texto em ambientes Unix e Linux e aumentar nossa produtividade como analistas e programadores de dados.