Regex auf HTML Dateien anwenden

Bash, Shell, PHP, Python, Perl, CGI
mariusz
Posts: 6
Joined: 2014-09-23 14:59

Regex auf HTML Dateien anwenden

Post by mariusz » 2014-09-23 15:13

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

ddm3ve
Moderator
Moderator
Posts: 1125
Joined: 2011-07-04 10:56

Re: Regex auf HTML Dateien anwenden

Post by ddm3ve » 2014-09-23 15:34

Sollte sinngemäss funktionieren:

Code: Select all

ls *.html | grep _[0-9]. | sed -e "s/[0-9]*_[a-z_A-Z]*_//g"
02:32:12 21.12.2012 und dann sind Deine Probleme alle unwichtig.

mariusz
Posts: 6
Joined: 2014-09-23 14:59

Re: Regex auf HTML Dateien anwenden

Post by mariusz » 2014-09-23 15:43

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.

ddm3ve
Moderator
Moderator
Posts: 1125
Joined: 2011-07-04 10:56

Re: Regex auf HTML Dateien anwenden

Post by ddm3ve » 2014-09-23 17:04

Klassiker Fall von WYGIWYAF.

Du hast bekommen, wonach Du gefragt hast.
02:32:12 21.12.2012 und dann sind Deine Probleme alle unwichtig.

User avatar
Joe User
Project Manager
Project Manager
Posts: 11578
Joined: 2003-02-27 01:00
Location: Hamburg

Re: Regex auf HTML Dateien anwenden

Post by Joe User » 2014-09-23 20:24

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
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.