Hallo Peter,
RewriteRule ^(.*)-(.*)-([0-9]*)-([0-9]*)$ /$1.php?id=$3&idx=$4
es scheint mir zweifelhaft, dass ein URL http://domain.tld/dateiname-beliebigerText-- von Dir tatsächlich beabsichtigt verarbeitet werden soll. An den entsprechenden Stellen soll doch mindestens eine Zahl oder ein Buchstabe vorkommen, oder?
RewriteRule ^(.*)-(.*)-([0-9]+)-([0-9]+)$ /$1\.php?id=$3&idx=$4
RewriteRule ^(.+)-(.+)-([0-9]+)$ /$1\.php?id=$3&idx=
# fertig
Gruß aus Berlin!
eddi