uso signo significa que oblicua inclinada fundeu espacio ejemplos ejemplo doble definicion cual barra ruby-on-rails ruby regex

ruby-on-rails - signo - que significa la doble barra//



¿Cómo se puede devolver todo después de la última barra(/) en una cadena de Ruby (7)

No creo que una expresión regular sea una buena idea, ya que la tarea es sencilla:

irb(main):001:0> s = ''https://www.facebook.com/hackerbob'' => "https://www.facebook.com/hackerbob" irb(main):002:0> s.split(''/'')[-1] => "hackerbob"

Por supuesto, también podría hacerlo usando expresiones regulares, pero es mucho menos legible:

irb(main):003:0> s[/([^//]+)$/] => "hackerbob"

Tengo una cadena que quisiera que todo después de la última / sea ​​devuelto.

Por ejemplo, para https://www.example.org/hackerbob , debería devolver "hackerbob" .


Puede probar /[a-zA-Z◆+:// icono de la línea de la vista de la marca de agua de la línea de seguridad o cualquier otra URL similar. Una gran herramienta para usar para expresiones regulares es http://www.rubular.com


Seguro que puede:

string = ''https://www.facebook.com/hackerbob'' string =~ /^https?:////www/.facebook/.com//(.*)/ $1


Una muestra mas

str = ''https://www.facebook.com/hackerbob'' ending = str.match(/.com//(.*)/) p ending[1]


Utilízalo

1.9.3p194 :039 > line = ''https://www.facebook.com/hackerbob'' 1.9.3p194 :039 > line.match(/.com//(/w+$)/)[1] # => "hackerbob"


Utilice la herramienta adecuada para el trabajo:

require ''uri'' url = "https://www.facebook.com/hackerbob" URI.parse(url).path[1..-1] # => "hackerbob"


Puede usar este

subject = /(//)([^//]+)/Z/i.match(subject) if match # match start: match.begin(0) # match end (exclusive): match.end(0) # matched text: match[0] # backreference n start: match.begin(n) # backreference n end (exclusive): match.end(n) # backreference n text: match[n] else # Match attempt failed end