-1
这是我到目前为止有:正则表达式乐趣
^/fe/(?:[0-9A-Za-z]{2,30}?/?+)([$|#|\?]+?)
与/fe/$1
我需要支持:
- 重写 “/ FE/ABC123 /#嗒嗒” 到“/fe /?ggg#blah“
- ”/ fe/abc123#blah“重写”/ fe/abc123/blah“
- ”/ fe/abc123 /?ggg#blah“以 “/ FE /#嗒嗒”
- 重写 “/ FE/ABC123?GGG#嗒嗒” 到 “/ FE /?GGG#嗒嗒”
- 重写 “/ FE/ABC123” 到 “/ FE /”
- 将“/ fe/abc123 /”改写为“/ fe /”
当前前4个被正确捕获。 我仍然有问题的最后两个。
你可以用这个在这里玩: http://gskinner.com/RegExr/?35ess
任何帮助将不胜感激:)
所以什么困难,如何接近为y我们目前的正则表达式不符合? –
'([$ |#| \?] +?)'应该是'([$ |#| \?] +)?'。 '+'后面的'?'使得它非贪婪。你似乎想要的是在可选之前进行比赛。 – acdcjunior