Ruby有一个内置的some_string.starts_with("abc")方法吗?
当前回答
如果这是一个非rails项目,我将使用String#index:
"foobar".index("foo") == 0 # => true
其他回答
你可以使用String =~ Regex。它返回字符串中完整正则表达式匹配的位置。
irb> ("abc" =~ %r"abc") == 0
=> true
irb> ("aabc" =~ %r"abc") == 0
=> false
你的题目和题体是不同的。Ruby没有starts_with?方法。Rails是一个Ruby框架,但是,正如sepp2k所指出的那样。请参阅他的回答中的评论,以获得相关文档的链接。
你可以使用正则表达式:
if SomeString.match(/^abc/)
# SomeString starts with abc
^在正则表达式中表示字符串的开始
它叫String#start_with?在Ruby中,布尔型方法的名称以?结尾。方法名中的单词用_分隔。在Rails上,你可以使用别名String#starts_with?(注意这里用的是复数——并且注意这种方法已经被弃用了)。就我个人而言,我更喜欢string# starts_with?在实际的字符串#start_with?
如果这是一个非rails项目,我将使用String#index:
"foobar".index("foo") == 0 # => true