Articles of regex

¿Cómo extraigo el número más correcto en una cadena?

Tengo cadenas como esta: https://www.facebook.com/username_with_number_14/posts/101505775425654414 https://www.facebook.com/username/posts/101505775425654466 Necesito extraer el número al final de la cadena en Ruby. En la primera cadena, es el segundo y último número, mientras que en la segunda cadena es el primer, único y último número. En este momento estoy extrayendo el número así: int1 = Regexp.new('.*?(\\d+)',Regexp::IGNORECASE).match()[1] Pero cuando esto se […]

Reemplazar usando gsub

Estoy teniendo algún problema para replace una parte de una cadena con otra string. Quiero que esta cadena "this-is-a-string.jpg" sea ​​reemplazada por "this-is-a-hash.jpg" . El valor de string puede ser cualquier valor. Esto es lo que he hecho hasta ahora. str = "this-is-a-string.jpg" str.gsub(/([az]+)[^\.]+?$/i, "hash") # => "this-is-a-string.hash"

Regexp, cómo limitar un partido

Tengo una cadena: string = %q{<span class="no">2503</span>read_attribute_before_type_cast(<span class="pc">self</span>.class.primary_key)} En este ejemplo, quiero hacer coincidir las palabras 'class' que no están en la label. Regexp para esto: /\bclass[^=]/ Pero el problema es que coincide con la última letra /\bclass[^=]/.match(string) => 'class.' No quiero tener un último punto en un resultado. Probé esta expresión regular: /\bclass(?:[^=])/ pero […]

Realizar operaciones matemáticas en una línea de ruby ​​script gsub regex capture

Estoy tratando de arreglar un file de text de subtítulos (.srt) que tiene algunos datos incorrectos con una secuencia de commands ruby ​​de una línea. El file se ve así: 53 00:03:52,835 –> 00:03:54,835 Boss?… BOSS?! 54 00:03:54,845 –> 00:03:56,990 55 00:0 –> 00:03:58,490 Go! I want the 55 stanza to look like this: 55 […]

eliminar ciertos caracteres escapados en una cadena de Rubyes usando gsub y regex

Estoy lidiando con algunas cadenas largas en ruby ​​que pueden tener algunos personajes extraños que escapingon. Por ejemplo, una cadena que me está causando problemas es como: s = "foobar \240 \241 \242 foobar\nfoobar" puts s foobar ? ? ? foobar foobar Estoy tratando de deshacerme de los extraños \240 , \241 , \242 caracteres […]

Ruby Regexp: coincidencia de resultados múltiples cuando está dentro del marcado

Tengo la siguiente cadena: nothing to match <- this rocks should match as should this still and this rocks and still -> should not match still or rocks <- no matches here -> Y quiero encontrar todas las coincidencias de 'rocas' y 'todavía', pero solo cuando están dentro de <- -> El objective es marcar […]

Regexp en ruby ​​1.8.7 que detectará un carácter Unicode de 4 bytes

¿Alguien puede decirme cómo escribiría una expresión regular de Ruby en ruby ​​1.8.7 para detectar la presencia de un carácter unicode de 4 bytes (específicamente los emoji)? Estoy tratando de manejar el hecho de que mysql no permite, por defecto , almacenar caracteres emoji unicode de 4 bytes, ahora en uso en iOS 5. ¡Gracias!

Regex en xpath?

Quiero encontrar una celda de tabla que contiene el enlace (\d{0,3} )?pieces . ¿Cómo necesitaría escribir este xpath? ¿Puedo simplemente insert el xpath directamente en la búsqueda de Capybara? ¿O debo hacer algo especial para indicar que es una expresión regular? ¿O no puedo hacerlo?

Sustituir 'con \' en una cadena de comillas dobles

La tarea es simple: tengo una cadena como "I don't know" y quiero sustituir ' con \' (sé que no tengo que escaping de las comillas simples). ¿Cómo puedo hacerlo?

Use expresiones regulares para get una subcadena dentro de una cadena más grande

Estoy usando ruby ​​para leer un file y necesito analizar de alguna manera algunos datos de cada línea y almacenarlos en una matriz. Dos ejemplos de 'líneas' del file son: 64.34.145.197 – – [03/Sep/2006:05:31:37 -0400] "GET /robots.txt HTTP/1.0" 200 56 64.34.145.197 – – [03/Sep/2006:05:31:37 -0400] "GET /manual/mod/mod_autoindex.html HTTP/1.0" 200 39134 De esto necesito get /robots.txt […]