用.htaccess重写url

用.htaccess重写url,.htaccess,.htaccess,我需要重写一个类似test.php的url?type=$1&val=$2 类型将始终是字符串,其中as val可以是数字或字符串。我得出了以下结论 test/[a-zA-Z]+/[a-zA-Z0-9 |]+/[0-9]+.html,但正如预期的那样,它将无法与lke test/hello world/23.html一起使用。我如何在表达式中包含破折号?您可以将破折号转义,因此如果您使用了破折号 test/([a-zA-Z]+)/([a-zA-Z0-9\-|]+)/([0-9]+).html

我需要重写一个类似test.php的url?type=$1&val=$2 类型将始终是字符串,其中as val可以是数字或字符串。我得出了以下结论
test/[a-zA-Z]+/[a-zA-Z0-9 |]+/[0-9]+.html,但正如预期的那样,它将无法与lke test/hello world/23.html一起使用。我如何在表达式中包含破折号?

您可以将破折号转义,因此如果您使用了破折号

test/([a-zA-Z]+)/([a-zA-Z0-9\-|]+)/([0-9]+).html 

对我来说,这更像是一个关于正则表达式的问题。测试/[a-zA-Z-]+/[a-zA-Z0-9 |-]+/[0-9]+.html应该可以。将破折号放在角色类的末尾很重要