2017-08-29 5 views
-1

Ich versuche, eine Zeichenfolge mit Ruby zu analysieren, um eine kürzere Zeichenfolge zu erhalten.Parsing String mit Ruby

Mein string:

ðŸ'Ž #btc \ nUp Signal auf Poloniex \ n + 895%, kaufen vol. Inc. von 2,78 BTC \ n + 1,66%, Preis: 0,00000949 BTC \ nSignals: 2/7d \ nMarket Cap: $ 8.632.464" }

ich versucht habe:

longstring.scan(/\#(.*?)\\\/) 

longstring[/\#(.*?)\\/,1] 

longstring.slice(/\#(.*?)\\/,1) 

... wo longstring ist die Variable, die den ursprünglichen String

die Regex Werke in Rubular, aber mein Ruby-Skript zu arbeiten.

+1

Was ist das erwartete Ergebnis? Übrigens, wie kommt es, dass du ein [Spiel in Rubular] (http://rubular.com/r/4OYkXxLQRx) bekommst, wenn es keine Übereinstimmung findet? –

+1

"Funktioniert nicht" bedeutet was? – tadman

+0

Ok, ich denke du willst ['longstring [/#(.*)/, 1]'] (https://ideone.com/4HFF7m) –

Antwort

0

Denken Sie daran, scheint nicht hält Dinge wie \n sind nicht Backslash-n, sondern eine newline Zeichen. Daher ist der \\ in Ihrem regulären Ausdruck falsch.

Ein besserer Matcher ist:

longstring[/\#(\w+)/]