Necesito una expresión regular que pueda eliminar la extensión de un nombre de archivo, devolviendo solo el nombre del archivo.Expresión regular para eliminar la extensión de un archivo
Éstos son algunos ejemplos de entradas y salidas:
myfile.png -> myfile
myfile.png.jpg -> myfile.png
que puedo hacer, obviamente, esto manualmente (es decir, la eliminación de todo, desde el último punto), pero estoy seguro de que hay una expresión regular que puede hacer esto por sí mismo.
Sólo para que conste, estoy haciendo esto en JavaScript
También piense en cosas como 'a.longthingrighthereattheend' o' .ext' & 'file'. Tal vez consulte con '/ (. *) \. [^.] {1,10} $ /'. En realidad, solo usa 'pathinfo()'. – Xeoncross
Una solución casi perfecta pero, si quiere evitar la trampa de nombres de archivos como .htaccess (comienza con un punto, pero no tiene extensión), como lo ejemplifica Roger Pate, simplemente sustituya el primer asterisco por una señal más, de la siguiente manera: (. +) \. [^.] + $ – aldemarcalazans