Método test() - Um método RegExp que testa uma correspondência em uma string. Retorna true ou false.
retorno: boolean
true - se a string corresponde à expressão
false - se a string não corresponde à expressão
"Use test() sempre que você quiser saber se um padrão está dentro de uma string[...]" (MDN)
//verifica se "hello" está presente no início de uma string, retornando um booleano como resultado.
const str = 'hello world!';
const result = /^hello/.test(str);
console.log(result); // true
Método search() - O método search() realiza uma busca por uma ocorrência entre uma expressão regular e uma String.
sintaxe: str.search(regexp)
onde:
regexp
Um objeto contendo uma expressão regular. Se um objeto obj for passado como parâmetro e não for do tipo RegExp, ele será implicitamente convertido para uma RegExp através da instrução new RegExp(obj). (MDN)
let str = "hey JudE"
let re = /[A-Z]/g
let reDot = /[.]/g
console.log(str.search(re)) // retorna 4, que é o índice da primeira letra maiúscula "J"
console.log(str.search(reDot)) // retorna -1 pois não conseguiu encontrar o ponto "."
Mais exemplos de uso do search()
let str = "Olá Mundo!";
let n = str.search(/mundo/i);
console.log(n);
//retornará 4, que é a posição da palavra na string
const form = document.querySelector('.signup-form')
// const usernameInput = document.queryselector('#username')
form.addEventListener('submit', event => {
event.preventDefault()
console.log(event.target.username.value)
})
const username = 'rogerms'
O quantificador mostra que a sequencia de caracteres precisa ter, pelo menos, 6 caracteres
``js
const pattern = /^[a-z]{6,}$/
Toda RegExp tem um método chamado test()
```js
const isAMatch = pattern.test(username) //armazena um boolean
if(isAMatch){
console.log('o teste da RegEx passou :) ')
} else {
console.log('o teste da regEx não passou :(')
}
console.log(isAMatch)
O search é um método de string e recebe como argumento a regex que queremos testar
const result = username.search(pattern)
O valor que a invocação do search retorna, é um numero inteiro que corresponde à posição ao index no qual o match aconteceu
console.log(result)
Quando o match não acontece, o search retorna -1. Quando dá match, o search retorna 0
Método test() - Um método RegExp que testa uma correspondência em uma string. Retorna true ou false.
retorno: boolean true - se a string corresponde à expressão false - se a string não corresponde à expressão
"Use test() sempre que você quiser saber se um padrão está dentro de uma string[...]" (MDN)
Método search() - O método search() realiza uma busca por uma ocorrência entre uma expressão regular e uma String.
sintaxe: str.search(regexp)
onde:
regexp Um objeto contendo uma expressão regular. Se um objeto obj for passado como parâmetro e não for do tipo RegExp, ele será implicitamente convertido para uma RegExp através da instrução new RegExp(obj). (MDN)
Mais exemplos de uso do search()
O quantificador mostra que a sequencia de caracteres precisa ter, pelo menos, 6 caracteres
``js const pattern = /^[a-z]{6,}$/
O search é um método de string e recebe como argumento a regex que queremos testar
O valor que a invocação do search retorna, é um numero inteiro que corresponde à posição ao index no qual o match aconteceu console.log(result) Quando o match não acontece, o search retorna -1. Quando dá match, o search retorna 0
@Roger-Melo