Introducción al VBScript
May 28, 2010 on 10:44 pm | In VBScript | No CommentsVBScript es un subconjunto de Visual Basic for Applications. Es un lenguaje script cuyo uso se extiende tanto en páginas web de maquinas cliente como en páginas activas de servidor (ASP), si bien, es en este segundo caso, donde adquiere mayor importancia.
Comentarios
Para introducir un comentario deberemos de usar la apostrofe ' o bien la palabra REM.
REM Esto es un comentario ' Esto es un comentario
Tipos de Datos
Lo primero que debemos de indicar es que en VBScript no es necesario darle un tipo a la variable. Es decir, podremos tener variables sin tipo a las cuales podremos asignarles cualquier valor. Estas variables serían de tipo variant.
Los tipos básicos que tiene VBScript son:
- Byte, enteros entre 0 y 255
- Integer, enteros entre -32.786 y 32.767
- Long, enteros entre -2.147.483.648 y 2.147.483.647
- Single, números reales de precisión simple
- Double, números reales de doble precisión
- Currency, cifras monetarias
- Date, fechas entre 01/01/100 y 31/12/9999
- String, cadenas de hasta 2 millones de caracteres
- Boolean, valor booleano. Puede tomar true o false.
- Null, valor nulo. No contiene nada.
- Empty, es el tipo que toma una variable variant cuando está sin inicializar (0 si es numérica y "" si es cadena).
- Error, sería el tipo error.
Existen una serie de funciones que nos servirán para ver cual es el tipo de las variables. Estas funciones son:
- IsEmpty (variable), devuelve True si la variable es de tipo Empty
- IsError (variable), devuelve True si la variable es de tipo Error.
- IsNull (variable), devuelve True si la variable es de tipo Null.
- IsNumeric (variable), devuelve True si la variable es un número de cualquier tipo.
- IsObject (variable), devuelve True si la variable pertenece al tipo Object.
Si bien, existe una función que devuelve el tipo de la variable, independientemente del tipo que esta sea. Esta función es vartype (variable). Los posibles valores que puede devolver son:
- 0-Null
- 1-Empty
- 2 -Integer
- 3-Long
- 4-Single
- 5-Double
- 6-Currency
- 7-Date
- 8-String
- 9-Objeto de automatización
- 10-Error
- 11-Boolean
- 12-Variant
- 13-Objeto de acceso a datos
- 17-Byte
- 8192-Array
También tenemos unas funciones que nos van a ayudar a cambiar el tipo de las variables. Estas son las funciones de conversión:
- CBool (variable), convierte la variable en booleana. Si la variable vale 0 se convertirá en true. Otro valor se convertira en false.
- CByte (variable), convierte la variable en Byte.
- CInt (variable), convierte la variable en Integer.
- CLng (variable), convierte la variable en Long.
- CSng (variable), convierte la variable en Single.
- CDbl (variable), convierte la variable en Double.
- CCur (variable), convierte la variable en Currency.
- CDate (variable), convierte la variable en Date.
- CStr (variable), convierte la variable en String.
Variables
Para declarar una variable lo haremos de la siguiente manera:
DIM nombre_variable1, nombre_variable2,..., nombre_variableN
Los nombres de las variables deben de comenzar por una letra, no pueden contener el carácter punto y no deben de exceder de 255 caracteres.
El ámbito de las variables será global a todos el código script de la página, o bien local si la variable ha sido declarada en un procedimiento.
Constantes
Para declarar una constante deberemos de hacerlo de la siguiente manera:
CONST nombre_constante = valor
El valor que se le asigne a la variable no podrá alterarse.
Ejemplos de código relacionados
Funciones básicas con cadenas
September 19, 2009 on 8:22 pm | In Java | 4 CommentsUna vez que hemos visto lo sencillo que es crear una cadena de texto vamos a echar un vistazo a los métodos que nos permiten manipular la cadena de texto.
Si tuviésemos que ordenar dichos métodos podríamos llegar a la siguiente división:
- Información básica de la cadena
- Comparación de Cadenas
- Búsqueda de caracteres
- Búsqueda de subcadenas
- Manejo de subcadenas
- Manejo de caracteres
- Conversión a String: valueOf()
Información básica de la cadena
.length()
Nos devuelve el tamaño que tiene la cadena.
char charAt(int index)
Devuelve el carácter indicado como índice. El primer carácter de la cadena será el del índice 0. Junto con el método .length() podemos recuperar todos los caracteres de la cadena de texto.
Hay que tener cuidado. Ya que si intentamos acceder a un índice de carácter que no existe nos devolverá una excepción IndexOutOfBoundsException.
Comparación de Cadenas
Los métodos de comparación nos sirven para comparar si dos cadenas de texto son iguales o no. Dentro de los métodos de comparación tenemos los siguientes:
boolean equals(Object anObject)
Nos permite comparar si dos cadenas de texto son iguales. En el caso de que sean iguales devolverá como valor "true". En caso contrario devolverá "false".
Este método tiene en cuenta si los caracteres van en mayúsculas o en minúsculas. Si queremos omitir esta validación tenemos dos opciones. La primera es convertir las cadenas a mayúsculas o minúsculas con los métodos .toUpperCase() y .toLowerCase() respectivamente. Métodos que veremos más adelante.
La segunda opción es utilizar el método equalsIgnoreCase() que omite si el carácter está en mayúsculas o en minúsculas.
boolean equalsIgnoreCase(String anotherString)
Compara dos cadenas de caracteres omitiendo si los caracteres están en mayúsculas o en minúsculas.
int compareTo(String anotherString)
Este método es un poco más avanzado que el anterior, el cual, solo nos indicaba si las cadenas eran iguales o diferentes
En este caso compara a las cadenas léxicamente. Para ello se basa en el valor Unicode de los caracteres.
Se devuelve un entero menor de 0 si la cadena sobre la que se parte es léxicamente menor que la cadena pasada como argumento. Si las dos cadenas son iguales léxicamente se devuelve un 0. Si la cadena es mayor que la pasada como argumento se devuelve un número entero positivo.
Pero que es esto de “mayor, menor o igual léxicamente”. Para describirlo lo veremos con un pequeño ejemplo.
s1 = "Cuervo" s2 = "Cuenca" s1.compareTo(s2);
Compararíamos las dos cadenas. Los tres primeros caracteres son iguales "Cue". Cuando el método llega al 4 carácter tiene que validar entre la r minúscula y la n minúscula. Si utiliza el código Unicode llegará a la siguiente conclusión.
(114) > n(110)
Y nos devolverá la resta de sus valores. En este caso un 4.
Hay que tener cuidado, porque este método no tiene en cuenta las mayúsculas y minúsculas. Y dichos caracteres, aún siendo iguales, tienen diferentes código. Veamos la siguiente comparación
s1 = "CueRvo" s2 = "Cuervo" s1.compareTo(s2);
Nuevamente los tres caracteres iniciales son iguales. Pero el cuarto es distinto. Por un lado tenemos la r minúscula y por otro la r mayúscula. Así:
R(82) < r(114)
¿Qué entero nos devolverá el método compareTo()? ¿-32?
int compareToIgnoreCase(String str)
Este método se comportará igual que el anterior. Pero ignorando las mayúsculas. Todo un alivio por si se nos escapa algún carácter en mayúsculas
Otros métodos para la comparación de cadenas son:
Búsqueda de caracteres
Tenemos un conjunto de métodos que nos permiten buscar caracteres dentro de cadenas de texto. Y es que no nos debemos de olvidar que la cadena de caracteres no es más que eso: una suma de caracteres.
int indexOf(int ch)
Nos devuelve la posición de un carácter dentro de la cadena de texto. En el caso de que el carácter buscado no exista nos devolverá un -1. Si lo encuentra nos devuelve un número entero con la posición que ocupa en la cadena.
int indexOf(int ch, int fromIndex)
Realiza la misma operación que el anterior método, pero en vez de hacerlo a lo largo de toda la cadena lo hace desde el índice (fromIndex) que le indiquemos.
int lastIndexOf(int ch)
Nos indica cual es la última posición que ocupa un carácter dentro de una cadena. Si el carácter no está en la cadena devuelve un -1.
int lastIndexOf(int ch, int fromIndex)
Lo mismo que el anterior, pero a partir de una posición indicada como argumento.
Búsqueda de subcadenas
Este conjunto de métodos son, probablemente, los más utilizados para el manejo de cadenas de caracteres. Ya que nos permiten buscar cadenas dentro de cadenas, así como saber la posición donde se encuentran en la cadena origen para poder acceder a la subcadena.
Dentro de este conjunto encontramos:
int indexOf(String str)
Busca una cadena dentro de la cadena origen. Devuelve un entero con el índice a partir del cual está la cadena localizada. Si no encuentra la cadena devuelve un -1.
int indexOf(String str, int fromIndex)
Misma funcionalidad que indexOf(String str), pero a partir de un índice indicado como argumento del método.
int lastIndexOf(String str)
Si la cadena que buscamos se repite varias veces en la cadena origen podemos utilizar este método que nos indicará el índice donde empieza la última repetición de la cadena buscada.
lastIndexOf(String str, int fromIndex)
Lo mismo que el anterior, pero a partir de un índice pasado como argumento.
boolean startsWith(String prefix)
Probablemente mucha gente se haya encontrado con este problema. El de saber si una cadena de texto empieza con un texto específico. La verdad es que este método podía obviarse y utilizarse el indexOf(), con el cual, en el caso de que nos devolviese un 0, sabríamos que es el inicio de la cadena.
boolean startsWith(String prefix, int toffset)
Más elaborado que el anterior, y quizás, y a mi entender con un poco menos de significado que el anterior.
boolean endsWith(String suffix)
Y si alguien se ha visto con la necesidad de saber si una cadena empieza por un determinado texto, no va a ser menos el que se haya preguntado si la cadena de texto acaba con otra.
De igual manera que sucedía con el método startsWith() podríamos utilizar una mezcla entre los métodos .indexOf() y .length() para reproducir el comportamiento de .endsWith(). Pero las cosas, cuanto más sencillas, doblemente mejores.
Métodos con subcadenas
Ahora que sabemos como localizar una cadena dentro de otra seguro que nos acucia la necesidad de saber como substraerla de donde está. Si es que no nos podemos estar quietos...
String substring(int beginIndex)
Este método nos devolverá la cadena que se encuentra entre el índice pasado como argumento (beginIndex) hasta el final de la cadena origen.
Así, si tenemos la siguiente cadena:
String s = "Víctor Cuervo"
El método…
s.substring(7)
Nos devolverá “Cuervo”.
String substring(int beginIndex, int endIndex)
Si se da el caso que la cadena que queramos recuperar no llega hasta el final de la cadena origen, que será lo normal, podemos utilizar este método indicando el índice inicial y final del cual queremos obtener la cadena.
Así, si partimos de la cadena...
String s = "En un lugar de la mancha...."
El método...
s.substring(6,11)
Nos devolverá la palabra “lugar”.
Hay que tener especial cuidado ya que es un error muy común el poner como índice final el índice del carácter último de la palabra a extraer. Cuando realmente es el índice + 1 de lo que queramos obtener.
Manejo de caracteres
Otro conjunto de métodos que nos permite jugar con los caracteres de la cadena de texto. Para ponerles en mayúsculas, minúsculas, quitarles los espacios en blanco, reemplazar caracteres,....
String toLowerCase();
Convierte todos los caracteres en minúsculas.
String toUpperCase();
Convierte todos los caracteres a mayúsculas.
String trim();
Elimina los espacios en blanco de la cadena.
String replace(char oldChar, char newChar)
Este método lo utilizaremos cuando lo que queramos hacer sea el remplazar un carácter por otro. Se reemplazarán todos los caracteres encontrados.
Conversión a String: valueOf()
Un potente conjunto de métodos de la clase String nos permite convertir a cadena cualquier tipo de dato básico: int, float, double,…
Esto es especialmente útil cuando hablamos de números. Ya que en múltiples ocasiones querremos mostrarles como cadenas de texto y no en su representación normal de número.
Así podemos utilizar los siguientes métodos:
- String valueOf(boolean b);
- String valueOf(int i);
- String valueOf(long l);
- String valueOf(float f);
- String valueOf(double d);
- String valueOf(Object obj);
Clase String: Representando una cadena
June 6, 2009 on 4:27 pm | In Java | 4 CommentsUna cadena de texto no deja de ser más que la sucesión de un conjunto de caracteres alfanuméricos, signos de puntuación y espacios en blanco con más o menos sentido.
Podemos encontrarnos desde la archiconocida cadena “Hola Mundo” y la no menos “Mi primera cadena de texto”, pasando por las cadenas de texto personalizadas “Víctor”, “Víctor Cuervo”, las cadenas de depuración “¿Aquí?”, “Paso 1”, “Paso 2”,... hasta las inclasificables “asdf”.
Todas ellas serán representadas en java con la clase String y StringBuffer. Aunque de momento nos centraremos en la primera.
Para encontrar la clase String dentro de las librerías de Java tendremos que ir a java.lang.String
Creando una cadena
Para crear una cadena tenemos dos opciones:
- Instanciamos la clase String. Que sería una creación explicita de la clase
String sMiCadena = new String("Cadena de Texto");
- Crear implícitamente la cadena de texto. Es decir, simplemente le asignamos el valor al objeto.
String sMiCadena = "Cadena de Texto";
En este caso, Java, creará un objeto String para tratar esta cadena.
Crear una cadena vacía
Podemos tener la necesidad de crear una cadena vacía. Puede darse el caso que no siempre sepamos lo que vamos a poner de antemano en la cadena de texto. ¿A quién no le surgen dudas?
... Fuera de bromas, muchas veces la cadena de texto nos la proporcionará el usuario, otro sistema,....
Para poder crear la cadena vacía nos bastará con asignarle el valor de "", o bien, utilizar el constructor vacío.
String sMiCadena = ""; String sMiCadena = new String();
Constructores String
Visto lo visto podemos resumir que tenemos dos tipos de constructores principales de la clase String:
- String(), que construirá un objeto String sin inicializar.
- String(String original), construye una clase String con otra clase String que recibirá como argumento.
Aunque tenemos alguno más que iremos viendo....
Volcando una cadena de texto a la consola
Solo nos quedará saber cómo volcar una cadena por pantalla. Esto lo haremos con la clase System.out.println que recibirá como parámetro el objeto String.
Por ejemplo:
System.out.println("Mi Cadena de Texto");
ó
String sMiCadena = new String("Mi Cadena de Texto"); System.out.println(sMiCadena);
Creado con WordPress y basado en el theme Pool.
Entries and comments feeds.
Valid XHTML and CSS. ^Top^
aulambra.com |
Linea de Código |
Manual Web |
W3Api |
Dudas de Programacion