What does char 160 mean in my source code?

前端 未结 8 1075
温柔的废话
温柔的废话 2021-02-05 00:01

I am formatting numbers to string using the following format string \"# #.##\", at some point I need to turn back these number strings like (1 234 567) into something like 1234

8条回答
  •  猫巷女王i
    2021-02-05 00:27

    Wouldn't be the preferred method to replace all empty characters (and this is what the questioner wanted to do) with the Regex Method which Rubens already posted?

    Regex.Replace(input, @"\p{Z}", "");
    

    or what Expresso suggests:

    Regex.Replace(input, @"\p{Zs}", "");
    

    The difference here is that \p{Z} replaces any kind of whitespace or invisible separator whereas the \p{Zs} replaces a whitespace character that is invisible, but does take up space. You can read it here (Section Unicode Categories):

    http://www.regular-expressions.info/unicode.html

    Using RegEx has the advantage that only one command is needed to replace also the normal whitespaces and not only the non-breaking space like explained in some answers above.

    If performance is the way to go then of course other methods should be considered but this is out of scope here.

提交回复
热议问题