興味があります。正規表現 (主に Ruby) を使用する以外に、文字列内のハッシュタグを解析するより高速で優れた方法はありますか?
編集
たとえば、文字列を解析しThis is a #hashtag, and this is #another one!
て単語#hashtag
andを取得したい#another
。私は#\S+
正規表現に使用しています。
興味があります。正規表現 (主に Ruby) を使用する以外に、文字列内のハッシュタグを解析するより高速で優れた方法はありますか?
編集
たとえば、文字列を解析しThis is a #hashtag, and this is #another one!
て単語#hashtag
andを取得したい#another
。私は#\S+
正規表現に使用しています。
コード (必要なコード) が表示されないため、正規表現をどのように使用しているかを推測しています。
#\S+
必要に応じて適切なパターンですがscan
、文字列内のすべての出現箇所を取得するにはおそらく最良の方法です。
'This is a #hashtag, and this is #another one!'.scan(/#\S+/)
=> ["#hashtag,", "#another"]
コンマを解析したくない場合は、/\B#\w+/ にする必要があります
はい私は同意する。/\B#\w+/
より理にかなっています。
うーん、アイデア....
s.split('#')
て、おそらく実際のハッシュタグにのみ正規表現を適用する
s.split('#').drop(1).map { |x| x[/\w+/] }
こともできます --- 速くなるかもしれないし、速くならないかもしれませんが、明らかに醜いです