arrays - 如何在红宝石的刺中添加“-”
问题描述
输入str = "This is my string. We need to truncate this string to certain length"
输出str = "this-is-my-string-we-need"
我试过了,但需要一点高效的代码:
str.split(" ").map{ |word| word + "-"}.join()
解决方案
我假设您的字符串将是正确的文本,但它可能包含句号 (.)、逗号 (,)、问号 (?) 和感叹号 (!)。根据您提供的省略句号的示例,我猜您正在删除这些特殊字符。
所以这里很少尝试达到你的场景,
str = "This is my string. We need to truncate this string to certain length"
str.downcase.gsub(/[^0-9A-Za-z\s]/, '').gsub(/\s+/, '-')
# => "this-is-my-string-we-need-to-truncate-this-string-to-certain-length"
推荐阅读
- c++ - 找到一种在 C++ 中使用条件提取浮点数的方法
- email - 电子邮件帐户未显示在 CPanel 中,但文件管理器中列出的文件夹
- matlab - 分类器产生连续值而不是不同的标签
- java - 关闭线程池是强制性的吗?
- java - How can I add a method or make this code so that I am not repeating myself so many times?
- asp.net - 如何在 asp.net c# 中创建基于令牌的登录表单
- python - Python:用#字符分割文本文件并总结总数
- javascript - Convert nested object to array of object
- java - I cannot print the user input from my arraylist
- c++ - 我在 switch case 中输入了一个字母,但它没有输出我输入的字母