替换搜索字符

时间:2014-08-09 17:13:07

标签: javascript regex node.js mongodb

希望你周六过得愉快。

我正在创建一个项目,我需要干净的URL。

这就是我的意思:

人们可以创建一个带标题的项目。标题可以包含字母,数字,短划线(-),逗号,冒号,分号和空格。

因此,如果我创建一个类似“Foo:Bar”的项目,我不希望这些网址看起来像localhost:8888/post/foo%3A%20bar,而是localhost:8888/post/foo-bar

以下是我的要求:

1)是否可以删除任意长度的特殊字符串(如上所述)并用单个短划线(-)替换?

2)是否有可能使用正则表达式或Javascript用通配符替换短划线,以便我可以在MongoDB数据库中搜索该标题?

万分感谢!

1 个答案:

答案 0 :(得分:1)

import re
x="foo:bar"
print re.sub("[^a-zA-Z0-9]+","-",x)

这是在python中。在java中匹配可以使用相同的正则表达式。对于b)部分是你可以再次使用re.sub将“ - ”替换为你选择的任何通配符。