Page 1 of 1

Regex auf HTML Dateien anwenden

Posted: 2014-09-23 15:13
by mariusz
Hallo,

habe z.b mehrere Dateien und möchte alle Nummern nach dem .html bist zu ersten unterstrich auslesen. Die Nummern haben alle verschiedene länge.

_dertest543_fauto_364467543.html

Ergebnis soll sein: 364467543

_testtest_test1556_test2_37543.html

Ergebnis soll sein: 37543

Re: Regex auf HTML Dateien anwenden

Posted: 2014-09-23 15:34
by ddm3ve
Sollte sinngemäss funktionieren:

Code: Select all

ls *.html | grep _[0-9]. | sed -e "s/[0-9]*_[a-z_A-Z]*_//g"

Re: Regex auf HTML Dateien anwenden

Posted: 2014-09-23 15:43
by mariusz
ddm3ve wrote:Sollte sinngemäss funktionieren:

Code: Select all

ls *.html | grep _[0-9]. | sed -e "s/[0-9]*_[a-z_A-Z]*_//g"
Danke für die schnelle Antwort.

Funktioniert leider nicht richtig. Es sollte ohne sed sein, nur regex. Aus deinem Code habe ich das probiert s/[0-9]*_[a-z_A-Z]*_//g, geht auch nicht.

Re: Regex auf HTML Dateien anwenden

Posted: 2014-09-23 17:04
by ddm3ve
Klassiker Fall von WYGIWYAF.

Du hast bekommen, wonach Du gefragt hast.

Re: Regex auf HTML Dateien anwenden

Posted: 2014-09-23 20:24
by Joe User
Als Oneliner für die Shell:

Code: Select all

find . -type f -name \*.html -print0 | xargs -0 -I % sed -e 's#_\([0-9]+\)\.html#\1#g' %
Als reine RegEx:

Code: Select all

s#_\([0-9]+\)\.html#\1#g
Und für Dein mod_rewrite:

Code: Select all

_([0-9]+)\.html