希望你周六过得愉快。
我正在创建一个项目,我需要干净的URL。
这就是我的意思:
人们可以创建一个带标题的项目。标题可以包含字母,数字,短划线(-
),逗号,冒号,分号和空格。
因此,如果我创建一个类似“Foo:Bar”的项目,我不希望这些网址看起来像localhost:8888/post/foo%3A%20bar
,而是localhost:8888/post/foo-bar
。
以下是我的要求:
1)是否可以删除任意长度的特殊字符串(如上所述)并用单个短划线(-
)替换?
2)是否有可能使用正则表达式或Javascript用通配符替换短划线,以便我可以在MongoDB数据库中搜索该标题?
万分感谢!
答案 0 :(得分:1)
import re
x="foo:bar"
print re.sub("[^a-zA-Z0-9]+","-",x)
这是在python中。在java中匹配可以使用相同的正则表达式。对于b)部分是你可以再次使用re.sub将“ - ”替换为你选择的任何通配符。