Regex para agregar ceros de relleno
-
03-07-2019 - |
Pregunta
Estoy trabajando en esta tubería Regh de yahoo y encontré un error que no puedo envolver en mi mente.
Tengo una URL, de la cual extraigo dígitos, los catulo, hago una etiqueta img html y la incrusté. El problema es que la URL se presenta de forma no rellenada, pero la imagen vinculada tiene los ceros. Por lo tanto, cuando hay un día o un mes con un solo dígito, la expresión regular deja de funcionar.
Esto es lo que tengo hasta ahora:
The URL: http://www.penny-arcade.com/comic/2009/1/2/patently-ridiculous/
The RegEx: (\d{4})/(\d+)/(\d+)
The Replacement: <img src="http://www.penny-arcade.com/images/$1/$1$2$3.jpg" />
What should appear: <img src="http://www.penny-arcade.com/images/2009/20090102.jpg" />
What appears: <img src="http://www.penny-arcade.com/images/2009/200912.jpg"/>
¿Cómo podría analizar esos ceros para hacer que esto funcione?
Solución
Si puede usar más de una expresión regular, aquí hay una solución:
search: (\d{4})/(\d)/ replace: $1/0$2/ search: (\d{4})/(\d{2})/(\d)/ replace: $1/$2/0$3/ search: (\d{2})/(\d{2})/(\d{2})/(.+)/ replace: <img src="http://www.penny-arcade.com/images/$1/$2$3.jpg" />
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow