Ruby on rails RubyonRails:用空格替换camel case
我想将类似于Ruby on rails RubyonRails:用空格替换camel case,ruby-on-rails,ruby,Ruby On Rails,Ruby,我想将类似于camelCase的驼峰大小写单词转换为camelCase。我尝试了上述方法 但这给了我CAMELCASE而不是CAMELCASE相同的使用结果: @q = params[:promo].gsub(/[a-zA-Z](?=[A-Z])/, '\0 ').downcase 编辑:url包含/camelCase,但在使用params[:promo]时,camelCase不会保留,@q是camelCase只需将大写字符先替换为空格,然后将所有字符都大写即可 'camelCase'.gsu
camelCase
的驼峰大小写单词转换为camelCase
。我尝试了上述方法
但这给了我CAMELCASE
而不是CAMELCASE
相同的使用结果:
@q = params[:promo].gsub(/[a-zA-Z](?=[A-Z])/, '\0 ').downcase
编辑:url包含
/camelCase
,但在使用params[:promo]时,camelCase不会保留,@q是camelCase只需将大写字符先替换为空格,然后将所有字符都大写即可
'camelCase'.gsub(/[A-Z]/, ' \0').upcase
如果任何人需要类似“CamelCase”的东西,可以使用“CamelCase”
'CamelCase'.underscore.split('_').collect{|c| c.capitalize}.join(' ')
或“骆驼案”改为“骆驼案”
'CamelCase'.underscore.split('_').join(' ')
或“骆驼案”改为“骆驼案”
'CamelCase'.underscore.humanize
注意:这个解决方案是特定于rails的,如果没有ActiveSupport,它在ruby中无法工作。您的方法是正确的,并在我的控制台中返回正确的结果。你确定你的参数[:promo]
是camelCase
,而不是camelCase
?@BroiSatse:你是对的,url有/camelCase
。但是在使用params[:promo]
时,它会变成camelcase
。它确实有效。顺便说一句,Regex:)您能检查给定请求的url头吗request.original_url
@BroiSatse:它显示camelCase
Uri字符串必须是带破折号和下划线的格式(不带任何类型的cammelcase)以及它的SEO well格式'camelCase'。下划线.titleize也返回“camelCase”-比您的建议简单得多
'CamelCase'.underscore.split('_').collect{|c| c.capitalize}.join(' ')
'CamelCase'.underscore.split('_').join(' ')
'CamelCase'.underscore.humanize