Cómo obtener enlaces de la propiedad href usando expresiones regulares

Valip

Tengo una regexexpresión que me devuelve todos los enlaces de un archivo html, pero tiene un problema: en lugar de devolver solo el enlace, como http://link.com, también devuelve href = "( href="http://link.com). ¿Qué puedo hacer para obtener solo el linkssin tener eso href="?

Esta es mi expresión regular:

/href="(http|https|ftp|ftps)\:\/\/[-a-zA-Z0-9.]+\.[a-zA-Z]{2,3}(?:\/(?:[^"<=]|=)*)?/g

Código completo:

  var source = (body || '').toString();
  var urlArray = [];
  var url;
  var matchArray;

  // Regular expression to find FTP, HTTP(S) URLs.
  var regexToken = /href="(http|https|ftp|ftps)\:\/\/[-a-zA-Z0-9.]+\.[a-zA-Z]{2,3}(?:\/(?:[^"<=]|=)*)?/g;

  // Iterate through any URLs in the text.
  while( (matchArray = regexToken.exec( source )) !== null )
  {
    var token = matchArray[0];
    token = JSON.stringify(matchArray[0]);
    token = matchArray[0].toString();
    urlArray.push([ token ]);
  }
Wiktor Stribiżew

RegExp#execalmacenará todo el contenido capturado por los grupos de captura que están definidos en su patrón. Puede acceder al Grupo 1 con [1]index.

Usar

var token = matchArray[1];

Además, creo que puede acortar la expresión regular a solo

/\bhref="((?:http|ftp)[^"]+)"/g

si está seguro de que los valores siempre están entre comillas dobles. Vea esta demostración .

Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.

En caso de infracción, por favor [email protected] Eliminar

Editado en
0

Déjame decir algunas palabras

0Comentarios
Iniciar sesiónRevisión de participación posterior

Artículos relacionados

Cómo obtener la URL de la imagen de una cadena html usando expresiones regulares

cómo obtener el valor de la etiqueta usando expresiones regulares

cómo obtener el valor de la etiqueta usando expresiones regulares

¿Cómo obtener las palabras dentro de la primera comilla simple en r usando expresiones regulares?

jq: seleccione el valor de la propiedad usando expresiones regulares

jq: seleccione el valor de la propiedad usando expresiones regulares

Excluir enlaces href en los resultados de búsqueda usando expresiones regulares

cómo raspar los enlaces de URL en un sitio web usando Python (solo expresiones regulares)

¿Cómo puedo encontrar todos los enlaces de Markdown usando expresiones regulares?

Cómo usar expresiones regulares para extraer enlaces de atributos de etiquetas HTML (src, data, href u otros)

Extrayendo cadenas de enlaces usando expresiones regulares en R

mejorar los enlaces de filtro en código html usando expresiones regulares

Cómo usar expresiones regulares en la propiedad JSON de anotación de jackson

Cómo obtener groupdict de una cadena de varias líneas usando expresiones regulares

¿Cómo expresar una instrucción de ensamblaje lw / sw usando la biblioteca de expresiones regulares de expresiones regulares?

Cómo obtener números con "." usando expresiones regulares

Cómo obtener números con "." usando expresiones regulares

Cómo obtener datos de archivos csv usando expresiones regulares en python

¿Cómo obtener una variedad de coincidencias y fallas usando expresiones regulares en Javascript?

Cómo obtener etiquetas html de una cadena usando expresiones regulares para javascript

Cómo obtener variables y valores de una cadena usando expresiones regulares

¿Cómo puedo obtener múltiples coincidencias de expresiones regulares usando un solo parámetro?

Cómo obtener números de una cadena en una lista en Python usando expresiones regulares

cómo obtener todas las líneas de cadena usando expresiones regulares en Python

Cómo obtener solo los nombres de campo de la cadena dada en formato de objeto (sin usar POJO) de la siguiente cadena usando expresiones regulares

¿Cómo obtener la ruta del archivo de la cadena coincidente con expresiones regulares?

Cómo obtener la parte válida de una coincidencia de expresiones regulares

¿Cómo usar expresiones regulares para obtener diferentes tipos de valores de la cadena?

Cómo obtener la cantidad de enlaces a la propiedad del objeto javascript

TOP Lista

CalienteEtiquetas

Archivo