【发布时间】:2015-04-20 15:58:22
【问题描述】:
我在 Meteor 中写了一个人的 CRUD,我想要漂亮的 URL,比如
www.mysite.com/John-Doe。
(实际上,我真正的偏好是 www.mysite.com/JohnDoe,但实现起来可能有点困难。)
为了做到这一点,我需要能够将“John-Doe”翻译成“John Doe”以及“John-Doe--Smith”John Doe-Smith”。
我当然可以将“--”初步替换为一些临时字符,但要寻找更优雅的解决方案。
(编辑:写完这篇文章后,我才意识到我可以清理名称以首先将多个空格和破折号折叠成一个;但我现在对更通用的答案感到好奇)。
【问题讨论】:
-
或者有没有更漂亮的名字编码方式?
-
试过
"a--b".replace(/-(?!-)/g, ' '),但它返回"a- b"。什么是替换所有 single 破折号的正则表达式,同时保留多个破折号? -
我最终用下划线代替了空格,而不是破折号:“John_Doe-Smith”。不过,我的问题仍然存在。