htaccess删除字符串末尾的多个char

时间:2013-06-22 17:30:51

标签: regex apache .htaccess mod-rewrite environment-variables

举个例子,如何删除字符“&”在字符串的末尾?

RewriteCond &&&&fddfdf&&& ^&*(.*)&*$
RewriteRule .* - [E=test:%1,NE]

变量“test”似乎返回“fddfdf&&&&”而不是“fddfdf”的预期输出, 这个代码有什么问题吗?

1 个答案:

答案 0 :(得分:1)

(.*)也在抓取&。最后的&*$并不能阻止这种情况;正则表达式仍然满意,因为它匹配&的缺乏。使用(.*?)使正则表达式不情愿。它将匹配第一个&

所有在一起:

RewriteCond &&&&fddfdf&&& ^&*(.*?)&*$