匹配URI与正则表达式查找替换

时间:2016-01-11 14:26:31

标签: regex

我还在学习正则表达式操作,我无法弄清楚如何执行一个正则表达式,在URI重写规则表达式中用“ - ”替换URI中的“/”。假设输入URI中存在的“/”数量是可能的。

我尝试^\/?(([a-z0-9_\.-]+)\/)+$并使用$1-$2example1/example2进行了测试,但我没有工作。

任何人都可以帮我吗?

由于

2 个答案:

答案 0 :(得分:2)

根文件夹中的Traceback (most recent call last): File "D:\CHANDU_DATA\ADAS_Automation\LibVLC\video_Python\video.py", line 33, in <module> event_manager.event_attach(EventType.MediaPlayerEndReached, video_end_reached) File "D:\CHANDU_DATA\ADAS_Automation\LibVLC\video_Python\vlc.py", line 1481, in event_attach raise VLCException("%s required: %r" % ('argument', callback)) VLCException: argument required: <function video_end_reached at 0x02DAECF0> 中的mod_rewrite或Apache中的.htaccess配置文件中的以下行:

vhost

将重写

RewriteEngine On

RewriteRule (.*)([^\/]+)\/([^\/]+)\/?$ http://%{HTTP_HOST}$1$2-$3

作为

http://%{HTTP_HOST}/example1/example2

http://%{HTTP_HOST}/example1-example2

作为

http://%{HTTP_HOST}/example1/example2/example3/example4

答案 1 :(得分:0)

为什么不使用

\/    '-'

最好使用'g'标志来替换Uri中的每个斜杠。这样(在javascript中)

"example1/example2".replace(/\//, '-');

返回

"example1-example2"