Как заменить случаи “-” с пустой строкой?

Как сказал @erickson, иногда есть заголовок «Transfer-Encoding: chunked» вместо «Content-Length:» и, конечно, у вас есть нулевое значение для длины.

О методе available () - никто не может гарантировать вам, что он вернет правильное значение, поэтому я рекомендую вам не использовать его.

34
задан Benjamin 20 September 2014 в 12:31
поделиться

5 ответов

string r = "123-456-7";
r = r.Replace("-", "");
97
ответ дан 27 November 2019 в 15:51
поделиться

This should do the trick:

String st = "123-456-7".Replace("-","");
25
ответ дан 27 November 2019 в 15:51
поделиться
string r = "123-456-7".Replace("-", String.Empty);

Для .Net 1.0 String.Empty не будет занимать дополнительное пространство в куче, но "" требует хранилища в куче и его адреса в стеке, что приводит к увеличению кода сборки. Следовательно, String.Empty быстрее, чем "".

Также String.Empty означает отсутствие ошибок опечаток.

Проверьте ссылку В чем разница между String.Empty и ссылкой «» .

20
ответ дан 27 November 2019 в 15:51
поделиться

String.Replace Method (String, String)

in your case it would be

string str = "123-456-7";
string tempstr = str.Replace("-","");
2
ответ дан 27 November 2019 в 15:51
поделиться

To be clear, you want to replace each hyphen (-) with blank/nothing. If you replaced it with backspace, it would erase the character before it!

That would lead to: 123-456-7 ==> 12457

Sean Bright has the right answer.

4
ответ дан 27 November 2019 в 15:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: