首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用start_with忽略大写字母?

如何使用start_with忽略大写字母?
EN

Stack Overflow用户
提问于 2013-08-23 11:31:18
回答 3查看 580关注 0票数 5

还有比这更好的忽略大写的方法吗?

代码语言:javascript
复制
"Hello".start_with?("hell","Hell") #=> true

我想检查数组中的字符串元素是否以另一个忽略大写字母的字符串开始,比如LIKE %中的MySQL。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-08-23 11:34:21

我会这样做:

代码语言:javascript
复制
'Hello'.upcase.start_with?('HELL')

解决同样问题的另一种方法。这相当于在SQL中执行类似于UPPER(column) like 'SOMETHING%'的操作。

票数 5
EN

Stack Overflow用户

发布于 2013-08-23 11:41:11

您可以使用正则表达式String#=~

代码语言:javascript
复制
"Hello" =~ /^hell/i    #=> 0
"hELLO" =~ /^hell/i    #=> 0
"world" =~ /^hell/i    #=> nil

由于0是真实的,而nil是错误的,因此可以在if子句中使用:

代码语言:javascript
复制
if str =~ /^hell/i
  # starts with hell
end
票数 5
EN

Stack Overflow用户

发布于 2013-08-23 11:41:43

我认为最好的方法是使用Ruby的正则表达式匹配和忽略大小写标志:

代码语言:javascript
复制
'Hello'.match /^hell/i

“^”指定字符串的开始。如果没有它,字符串中的任何地方都会匹配“地狱”。最后一个'i‘只是一个regex标志,用来表示与忽略大小写集的匹配。

您可以在这里找到有关Regex的更多信息:http://www.regular-expressions.info/ruby.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18401784

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档