private const string NUMERIC_REGEX = "\\W*([0-9]+)(\\W)?([0-9]*)\\W*"
私が取り組んでいるプロジェクトでこの正規表現が使用されていました。通貨を含む文字列から数値を解析すると仮定します。 => 14.22この正規表現より優れた代替方法をお勧めしますか?
"14.22€" のよう
しかし、これをサポートしていないようです。誰かが特別な通貨記号で動作するようにそれを適応させるのに役立つことができますか?
代わりに、この([\d,.]+)
が私の必要なところでうまく動作することがわかりましたが、私が特別なケースを逃しているのかどうかは分かりません。
通貨記号はスペースの有無にかかわらず左右に移動できます –
['\ p {Sc} * \ s *([0-9] * \。?[0-9 ] +)\ s * \ p {Sc} * '](http://regexstorm.net/tester?p=%5cp%7bSc%7d*%5cs*%28%5b0-9%5d*%5c.% '\ p {Sc}'が通貨記号と一致する場合、3f%5b0-9%5d%2b%29%5cs *%5cp%7bSc%7d *&i = Like +%2214.22 +%e2%82%ac%22) \ s * \ p {Sc} * \ s *([0-9] * \。?[0-9] +)\ s * \ p {Sc} * "; –