eal*_*ent 46
它将字符串与正则表达式匹配.
'hello' =~ /^h/ # => 0
如果没有匹配,它将返回nil.如果你传递了无效的参数(即左侧或右侧不正确),它将抛出一个TypeError或返回false.
Ju *_*ira 16
来自ruby-doc:
str =~ obj => fixnum or nil
匹配 - 如果obj是Regexp,则将其用作匹配str的模式,并返回匹配开始的偏移位置,如果没有匹配则返回nil.否则,调用obj.=〜,将str作为参数传递.Object中的default =〜返回false.
"cat o' 9 tails" =~ /\d/ #=> 7
"cat o' 9 tails" =~ 9 #=> false
Run Code Online (Sandbox Code Playgroud)
嗯,引用是正确的,它是“匹配此正则表达式”运算符。
if var =~ /myregex/ then something end
Run Code Online (Sandbox Code Playgroud)
正如其他答案已经指出的那样,=~是正则表达式与字符串匹配运算符。
注意:=~运算符不可交换
请考虑下面来自ruby 文档站点的注释,因为我只看到了第一种形式
str =~ regexp
Run Code Online (Sandbox Code Playgroud)
在其他答案中使用:
注意:
str =~ regexp与 不同regexp =~ str。仅在第二种情况下,从命名捕获组捕获的字符串才会分配给局部变量。
这是第二种形式的文档:链接
| 归档时间: |
|
| 查看次数: |
18640 次 |
| 最近记录: |