blob: 388e20dd8ee524d052b487a005804cf10042cbb0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
|
---
title: RegExp.prototype.test()
slug: Web/JavaScript/Reference/Global_Objects/RegExp/test
tags:
- Expresion Regular
- Prototipo
- metodo
translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/test
original_slug: Web/JavaScript/Referencia/Objetos_globales/RegExp/test
---
<div>{{JSRef}}</div>
<p>El método <code><strong>test()</strong></code> ejecuta la búsqueda de una ocurrencia entre una expresión regular y una cadena especificada. Devuelve <code>true</code> o <code>false</code>.</p>
<h2 id="Sintaxis">Sintaxis</h2>
<pre class="syntaxbox"><code><var>regexObj</var>.test(<var>cadena</var>)</code></pre>
<h3 id="Parámetros">Parámetros</h3>
<dl>
<dt><code>cadena</code></dt>
<dd>La cadena a comparar contra la expresión regular.</dd>
</dl>
<h3 id="Valor_de_Retorno">Valor de Retorno</h3>
<p>Retorna <code>true</code> si existe una coincidencia entre la expresión regular y la cadena especificada; de lo contrario retorna <code>false</code>.</p>
<h2 id="Descripción">Descripción</h2>
<p>Use <code>test()</code> cuando desee saber si existe la ocurrencia de un patrón en una cadena (similar al método {{jsxref("String.prototype.search()")}}, la diferencia es que <code>test()</code> devuelve un booleano, mientras que <code>search()</code> devuelve el índice de la coincidencia (si la encuentra) o -1 si no la encuentra).</p>
<p>Si requiere más información (a coste de una ejecución más lenta) utilice el método {{jsxref("RegExp.prototype.exec()", "exec()")}}. Al igual que este último, multiples llamadas a <code>test()</code> sobre la misma instancia global de una expresión regular avanzará desde de la ocurrencia anterior.</p>
<h2 id="Ejemplos">Ejemplos</h2>
<h3 id="Usando_test()">Usando <code>test()</code></h3>
<p>Ejemplo simple que prueba si "hello" está contenido al principio de una cadena y devuelve un valor booleano.</p>
<pre class="brush: js">var cadena = "hello world!";
var result = /^hello/.test(cadena);
console.log(result); // true
</pre>
<p dir="ltr" id="tw-target-text">El siguiente ejemplo registra un mensaje que depende del éxito de la prueba:</p>
<pre class="brush: js">function probarEntrada(regexp, cadena){
var subcadena;
if (regexp.test(cadena)) {
subcadena = ' contiene ';
} else {
subcadena = ' no contiene ';
}
console.log(cadena + subcadena + regexp.source);
}
</pre>
<h2 id="Especificaciones">Especificaciones</h2>
<table class="standard-table">
<tbody>
<tr>
<th scope="col">Especificación</th>
<th scope="col">Estado</th>
<th scope="col">Comentario</th>
</tr>
<tr>
<td>{{SpecName('ES3')}}</td>
<td>{{Spec2('ES3')}}</td>
<td>Definition inicial. Implementado en JavaScript 1.2.</td>
</tr>
<tr>
<td>{{SpecName('ES5.1', '#sec-15.10.6.3', 'RegExp.test')}}</td>
<td>{{Spec2('ES5.1')}}</td>
<td> </td>
</tr>
<tr>
<td>{{SpecName('ES6', '#sec-regexp.prototype.test', 'RegExp.test')}}</td>
<td>{{Spec2('ES6')}}</td>
<td> </td>
</tr>
<tr>
<td>{{SpecName('ESDraft', '#sec-regexp.prototype.test', 'RegExp.test')}}</td>
<td>{{Spec2('ESDraft')}}</td>
<td> </td>
</tr>
</tbody>
</table>
<h2 id="Compatibilidad_en_Navegadores">Compatibilidad en Navegadores</h2>
{{Compat("javascript.builtins.RegExp.test")}}
<h2 id="Vea_también">Vea también</h2>
<ul>
<li>El capítulo <a href="/es/docs/Web/JavaScript/Guide/Regular_Expressions">Expresiones Regulares</a> de la <a href="https://developer.mozilla.org/es/docs/Web/JavaScript/Guide">Guía JavaScript</a></li>
<li>{{jsxref("RegExp")}}</li>
</ul>
|