AWK tiene muchas funciones integradas para operaciones numéricas, de strings, de entrada y de salida. Awk tiene los siguientes dos tipos de categorías de funciones integradas de alto nivel:
- Funciones integradas para operaciones numéricas.
- Funciones integradas para operaciones con strings.
Requisito previo: comando AWK en Unix/Linux
Funciones integradas para operaciones numéricas
1. Función Awk int(n) : la función int() nos da la parte entera del argumento dado. Esto produce la parte entera más baja de n dada. n es cualquier número con o sin coma flotante. Si usa el número entero como argumento, esta función devuelve lo mismo.
- Ejemplos:
Input : $awk 'BEGIN{print int(3.534);print int(4);print int(-5.223);print int(-5);}' Output : 3 4 -5 -5
2. Función awk log(n) : la función log() proporciona logarítmica natural (con base e ) de la cantidad dada n. log() devuelve un valor logarítmico solo cuando n es un número positivo. Si damos algún número inválido (incluso negativo), arroja un error.
- Ejemplos:
Input : $awk 'BEGIN{print log(3.534);print log(4);print log(0);print log(-5);print log(-1);}' Output : 1.26243 1.38629 -inf awk: cmd. line:1: warning: log: received negative argument -5 nan awk: cmd. line:1: warning: log: received negative argument -1 nan
Explicación: Devuelve -inf cuando se da cero y da error nan cuando se da un número negativo.
3. Función awk sqrt(n) : la función sqrt() proporciona la raíz positiva del entero n dado. Esta función también acepta el número positivo.
- Ejemplos:
Input : $awk 'BEGIN{print sqrt(16);print sqrt(0);print sqrt(-12);}' Output : 4 0 awk: cmd. line:1: warning: sqrt: called with negative argument -12 -nan
Explicación: devuelve un error nan si damos un número negativo como argumento.
4. Función awk sin(n) : la función sin() proporciona el valor sinusoidal de n, con n en radianes .
- Ejemplos:
Input : $awk 'BEGIN{print sin(-60);print sin(90);print sin(45);}' Output :0.304811 0.893997 0.850904
5. Función awk cos(n) : la función cos() da el valor del coseno de n, con n en radianes .
- Ejemplos:
Input : $awk 'BEGIN{print cos(-60);print cos(90);print cos(45);}' Output :-0.952413 -0.448074 0.525322
Funciones integradas para operaciones con strings
1. awk index(str1, str2) Función: busca en la string str1 las primeras apariciones de la string str2 y devuelve la posición en caracteres donde comienza esa aparición en la string str1 . Los índices de string en awk comienzan desde 1 .
- Ejemplo:
Input: awk 'BEGIN{print index("Graphic", "ph"); print index("University", "abc")}' Output: 4 0
Explicación: Devuelve 0 si str2 no se encuentra en str1.
2. Función awk length(string) : La función length() calcula la longitud de una string.
- Ejemplo:
Input: $awk 'BEGIN{print length("Graphic Era University")}' Output: 22
Explicación: La longitud de la string también incluye espacios.
3. Función awk substr(s, p, n) : La función length() se usa para extraer la función de substring de una string. Devuelve la substring de la string s en la posición inicial p hasta una longitud máxima de n . Si no se proporciona n , se usa el resto de la string de p .
- Ejemplo:
Input: $awk 'BEGIN{print substr("Graphic Era University", 9)}' Output: Era University
Input: $awk 'BEGIN{print substr("Graphic Era University", 9, 8)}' Output: Era Univ
4. awk tolower(s) Función: Traduce todos los caracteres en mayúsculas en la string s a minúsculas y devuelve la nueva string.
- Ejemplo:
Input: $awk 'BEGIN{print tolower("GEEKSFORGEEKS")}' Output: geeksforgeeks
5. awk toupper(s) Función: Traduce todos los caracteres en minúsculas en la string s a mayúsculas y devuelve la nueva string.
- Ejemplo:
Input: $awk 'BEGIN{print toupper("geeksforgeeks")}' Output: GEEKSFORGEEKS
6. Función awk split(string, array, fieldsep) : Esto divide la string en partes separadas por fieldep , y almacena las partes en array . La primera pieza se almacena en array[1] , la segunda pieza en array[2] , y así sucesivamente. El valor de string del tercer argumento, fieldsep , describe dónde dividir la string .
- Ejemplo:
Input: $awk 'BEGIN{string="My Nationality Is Indian"; fieldsep=" "; n=split(string, array, fieldsep); for(i=1; i<=n; i++){printf("%s\n", array[i]);}}' Output: My Nationality Is Indian
Explicación: El guión anterior divide la oración en palabras, usando un espacio como el carácter que separa las palabras.
Publicación traducida automáticamente
Artículo escrito por akanshgupta y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA