新手问题 请教一下 String 的 delete 方法是怎么用啊?英文不好看不懂

ajfg93 · 2016年05月27日 · 最后由 davidwei 回复于 2016年06月05日 · 4907 次阅读

"hello".delete "l","lo" #=> "heo" "hello".delete "lo" #=> "he" "hello".delete "aeiou", "^e" #=> "hell" "hello".delete "ej-m" #=> "ho"

Returns a copy of str with all characters in the intersection of its arguments deleted.

可以解释一下吗,谢谢,已谷歌。

  1. 怎么用 自己进入 irb 调试一下,对比下输入输出不就知道了吗?

2.英文不好,那么多翻译工具、网页也可以用,有什么看不懂的?

3.已谷歌,不知道你谷歌的啥,例如你不知道 puts 怎么用,这估计 google 也帮不了你了吧。。。

#1 楼 @catherine 请问一下怎么在谷歌搜索 "^e" 呢? “^”类字符都会被吃掉

貌似可以直接来喃:

#1 楼 @catherine 不想答就不答嘛,我国社区总是针对人不针对问题。我搜了 stackoverflow,第三行和第四行没看懂。谷歌翻译我也用了,你自己看看出来的结果能看懂吗。你会的话,贴个链接或者简单几句说完不就行了,非得装老先生吐槽新手,有意思么。

#3 楼 @qinfanpeng 高亮的都是单词,比如我想知道 ^e 是什么意思,并搜不出来。

#3 楼 @ajfg93 我是说这种问题可以自己打开终端,测试一下,找找规律就可以知道是怎么用的了。这种自己实践下就可以找到答案。

#4 楼 @ajfg93 第 3 行,是用到了正则匹配,意思是删除 aeiou,但 e 除外。第四行,就是一个‘-’,1-9,a-z 你固定用 abcdefg 测试下就知道那个‘-’是什么意思了

#7 楼 @catherine 谢谢,看了一下正则表达式,懂了。

#5 楼 @ajfg93 大家一起努力,以后看类似的,就能猜到啥意思了。就这个问题而言,若打算单独搜索“^e”确实不好弄。

不客气,我也不算老手,今年才毕业。

最开始学习,看到正则表达式我也不知道这是什么鬼,奇奇怪怪的符号放在一起。所以先尽量把文档的说明看懂,这一步很容易。再自己调试,尝试找规律来得出答案,这个过程后,就算有问题,你也差不多提取到这个问题困扰你的核心部分。不管是提问还是搜索,都更容易获得更准确的反馈。

#4 楼 @ajfg93 你这种心态,丝毫对不起给你回复的人。

  • 第一句话就把给你回复解决问题方法而非问题答案的人说成这个样子?还要拉上一个国内论坛?对人不对事?你如果觉得这种人多,那我只能告诉你,你这种问个问题就想让别人恭恭敬敬把答案送上来的人更多。
  • 你说你查了,google 了,查过,google 过,没找出来就完了?浅尝辄止之后就可以这种口气来说别人?况且,难道 google 解决不了你的问题?我只能说,googole 可以解决你这辈子遇到的所有问题,只是看你是不是能找出来,正则表达式的符号你不清楚,证明你在这方面的知识地图很稀疏,你自然会在现在和以后遇到更多你不明白的问题,你这样的心态,如果让回答你问题的让心怀一点点安慰?
  • 与其说他装老先生吐槽新手,不如说你这个新手装怨妇来吐槽他吧,英语不好,知识掌握的少都没什么大不了,重要的是,你这种状态加上你这种心态,很难想象你如何才可以进步。 我纯粹国内一般吐槽者,听不见去可以直接忽略,只是觉得或许这样说几句,对回答你问题的人有了一点点尊重。

虽然 我跟 @catherine 一样也是刚毕业,但@ajfg93 新同学还是 naive,要多学习提问的智慧,这样才可以在社区谈笑风生

要学会看全啊,还有一句,Uses the same rules for building the set of characters as String#count. http://ruby-doc.org/core-2.3.0/String.html#method-i-count

Each other_str parameter defines a set of characters to count. The intersection of these sets defines the characters to count in str. Any other_str that starts with a caret ^ is negated. The sequence c1-c2 means all characters between c1 and c2. The backslash character \ can be used to escape ^ or - and is otherwise ignored unless it appears at the end of a sequence or the end of a other_str.

其实楼主如果没有读过《提问的智慧》的话,推荐先读一下。

#11 楼 @realwol 真的,你如果觉得我的问题很新手,很脑残,你可以 skip 掉,你可以不答,你可以不进来,你可以当我傻逼。但请你不要进来不帮助我又骂我傻逼,我会觉得你也很 low。有的时候新手遇到一个小问题卡壳了,可能前辈几句话就可以节省我的半个小时到一个小时。if I can really understand the manpage in a easy way, why would I need your help, sir?

#11 楼 @realwol 如果你旁边有个朋友,也问你一个问题,那你是不是也会这样: “看了文档没有” -> “看了,我英文不好“ -> ”用翻译工具啊“ -> ”翻译了也看不懂“ -> "用谷歌啊“ -> "我不会翻墙” -> "上 stackoverflow 搜你造不?" -> "都说了我英文不好" -> "那用百度搜啊" -> "我觉得还是问你比较快" -> "说吧你想问什么” -> "那个,ruby 的输出怎么打来着?" -> "卧槽这么简单你不会看文档啊?" -> "这里有本《提问的智慧》你拿去看看吧,好好学习” -> "好的,前辈,前辈您最后能告诉我那个输出的语句吗?"

#18 楼 @mizuhashi 再说一句都多余。

#15 楼 @ajfg93 我觉得既然问的是新手问题,态度可以柔和一点,那些进来没有回答你问题的人,也没有对你进行人身攻击或者辱骂,他们只是站在具体问题之外,说一些自己的看法或者建议。有些话可能不中听,但是你毕竟是寻求帮助,你可以说声谢谢或者不回复,但是直接指责对方,会吓跑其它想帮助你的人。

还是建议你先看看提问的智慧

其实心情可以理解,但是还是要对回答的人说声谢谢 :)

需要 登录 后方可回复, 如果你还没有账号请 注册新账号