2009-06-02 11 views
1

MS Wordから貼り付けたテキストから箇条書きの記号を削除する必要がありますが、一致するものを特定できません。Ruby:MS Wordから貼り付けられた箇条書きを置換する

STDOUTに印刷されたときに記号がのようにこれらの文字のための⢠ASCIIコードが194と162 ある•シンボルのASCIIコードは、JavaScriptやRubyのコードのいずれかで、処理方法149の

任意の提案で表示します? xxxは、あなたが探している文字コードがある

mystring.gsub(/[\xxx]/,'whatever')

答えて

1

ルビーでは、あなたは次のようなものを使用することができるはずです。あなたはそのコードが何であるかをirbでputs mystringとするだけで見ることができます。

0

あなたが記述した記号を得ることを含めて、同様の問題点がありました。私はさまざまなregExフィルタを試してみましたが、箇条書きや結果の文字には何もできませんでした。

しかし、カスタムメソッドを使用して箇条書きポイント(または同様の文字)をフィルタリングする方法を見つけることができました。それはかなりまたは理想的ではないのですが、それは動作します:

def strip_bullet_point(value) 
    first_char = 0 
    value.each_char { |c| c =~ /[A-Za-z]/ ? break : first_char += 1 } 

    value[first_char...value.length] 
end 

、彼らはまた、=〜、チェックのためにnilを返すので、これはまた、すべての前の空白およびその他の非アルファベット文字を削除します。

式一致には/[[:alpha:]]/を使用しないでください。これは、文字を文字と見なすためです。 /[A-Za-z]/は「ñ」のような英語以外の文字に偽陰性を与えることに注意してください。