考虑以下示例字符串:
mystr ="1. moody"
我想大写出现在中的第一个字母mystr
。我正在Ruby中尝试此正则表达式,但仍返回mystr
(moody)中的所有字母,而不是仅返回字母m。
puts mystr.scan(/[a-zA-Z]{1}/)
任何帮助表示赞赏!
尝试返回所有字母的原因是因为您正在使用执行scan
此操作的方法,它会返回所有与正则表达式匹配的字符(以您的大小写字母为准)。对于您的用例,应该sub
只使用sub
1个字母,因此应该使用。
我使用http://rubular.com练习我的Ruby Regexes。这是我想到的http://rubular.com/r/fAQEDFVEVn
正则表达式为: /\b[a-z]/
它用于\b
查找单词边界,最后我们只要求输入一个字母[a-zA-Z]
最后,我们将使用sub
大写版本替换它:
"1. moody".sub /\b[a-z]/, &:upcase
=> "1. Moody"
希望能有所帮助。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句