多くの文字を含む文字列があります。私はA-ZA-Zと空白を取り除き、残りの部分を残しておきたい。これを行う最善の方法は何ですか?文字列からアルファベットと空白を削除します
は、ここで私は
presaleEstimateHigh = Regex.Replace(presaleEstimateHigh, @"[A-Za-z]", string.Empty);
を試みたが、私はまた、ホワイトスペースを削除するために必要なものです。
多くの文字を含む文字列があります。私はA-ZA-Zと空白を取り除き、残りの部分を残しておきたい。これを行う最善の方法は何ですか?文字列からアルファベットと空白を削除します
は、ここで私は
presaleEstimateHigh = Regex.Replace(presaleEstimateHigh, @"[A-Za-z]", string.Empty);
を試みたが、私はまた、ホワイトスペースを削除するために必要なものです。
\ sを使用できます。例えば
:
presaleEstimateHigh = Regex.Replace(presaleEstimateHigh, @"[A-Za-z\s]", string.Empty);
あなたの正規表現は、空白を除いて問題ありません。これは動作するはずです:
string result = Regex.Replace(myString, @"[a-zA-Z\s]+", string.Empty);
あなたは空白を含めること\s
を使用することができます。
Regex.Replace(myString, @"[a-z]|[A-Z]|\s", "")
デモ:正規表現なしhttp://ideone.com/yHG2xw
:
var chars = str.Where(c => !char.IsLetter(c) && !char.IsWhitespace(c)).ToArray();
var rest = new string(chars);
あなたはほとんどそれを作りました。この正規表現を使用してください。
[a-zA-Z ]+
単に空白が含まれています。 +
を追加すると、一連の文字を一度に(内部的に)置き換えることができるので、効率が向上します。
これにはタブは含まれていません。 – Dan
'%20'は町の唯一の空白ではありません。 – mellamokb
@mellamokb修正 - 私の答えを更新しました。 –