$var = 'about/';
$var =~ s/^(.*)\/?$/index.php?action=$1/;
Run Code Online (Sandbox Code Playgroud)
我希望它匹配并替换尾部斜杠.但事实并非如此,我得到了这样的结果:
index.php?action=about/
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?我已经尝试将它包装在括号中(\/)?并在括号中包含问号(\/?).不包括前面的正斜杠显然对我没有任何好处.那么当它在那里时,怎么能让它吃掉斜线呢?
Jen*_*ens 11
你的问题是,.*贪婪也是如此.尝试使用.*?.
Regex引擎首先.*尽可能扩展,然后检查正则表达式是否可以匹配输入.在你的情况下,它确实如此,因为尾部斜杠是可选的.然后回家满意.
| 归档时间: |
|
| 查看次数: |
1263 次 |
| 最近记录: |