我尝试将字符串转换为在单词之间加入连字符( - )并更改为小写。例如:
'ThisIsMyString'
到'this-is-my-string'
到目前为止,这是我的代码:
def kebabize(str)
str.gsub(/(?=[A-Z])/, '-').downcase
end
我还需要它来删除字符串中的数字。例如:
'ThereIs3Words'
到'there-is-words'
我需要在代码中添加什么才能执行此操作?
答案 0 :(得分:1)
只需在其周围包裹另一个gsub
:
def kebabize(str)
str.gsub(/\d+/, '').gsub(/(?=[A-Z])/, '-').downcase
end
答案 1 :(得分:-1)
捕获它的正则表达式是[A-Z] [a-z] +(?= [A-Z] | \ b) 请参阅:https://regex101.com/r/popMSp/1
说明: 读'字'以大写字母([A-Z])开头,后跟几个大写字母([a-z] +),直到遇到大写字母[A-Z]或\ b
在代码中,您省略了边界选项,因为这不需要替换:
<a href="https://example.com/mypdf.pdf" target="_blank" rel="nofollow noopener">View PDF</a>