»» RewriteRule ^edit/([a-zA-Z0-9]+.html)$ /page_edit.php?k=$1 [L]
»» RewriteRule ^([a-zA-Z0-9]+.html)$ /page.php?k=$1 [L]Wobei es
RewriteRule ^edit/(.*) page_edit.php?k=$1 [L]
RewriteRule (.*) page.php?k=$1 [L]ja auch tun dürfte, oder?
Nicht direkt, mit der letzten Regel wirst du bedingt durch den internen redirect immer page.php?k=page.php im Verzeichniskontext erhalten.
Es sei denn, er will explizit Underlines und Viertelgeviertstriche verbieten und die Datei _muss_ mit .html enden.
Und natürlich alle anderen „eingeschleusten“ Zeichen wie &= etc oder andere Ressourcen wie foo.jpg oder other.php. Was an die PHP-Dateien weitergereicht werden soll, weiß natürlich nur der OP, oben schränkt er es zumindest ein. :-)