C# 円マーク、カンマの削除編集をしたい。 への返答
投稿で使用できる特殊コードの説明。(別タブで開きます。)
以下の返答は逆順(新しい順)に並んでいます。
投稿者 魔界の仮面弁士  (社会人)
投稿日時
2022/7/25 12:51:43
//
// [U+00A5]『¥』 "Yen Sign"
// https://unicode-table.com/jp/00A5/
string a1 = "¥";
string a2 = "\u00a5";
// 00a5:\ == \:True
Console.WriteLine("{0:x4}:{1} == {2}:{3}", (int)a1[0], a1, a2, a1 == a2);
//
// [U+005C]『\』 "Reverse Solidus"
// https://www.fileformat.info/info/unicode/char/005c/index.htm
string b0 = @"\";
string b1 = "\\";
string b2 = "\u005c";
// 005c:\ == \:True
Console.WriteLine("{0:x4}:{1} == {2}:{3}", (int)b0[0], b0, b1, b0 == b1);
Console.WriteLine("{0:x4}:{1} == {2}:{3}", (int)b1[0], b1, b2, b1 == b2);
Console.WriteLine("{0:x4}:{1} == {2}:{3}", (int)b2[0], b2, b0, b2 == b0);
//
// [U+FFE5]『¥』 "Fullwidth Yen Sign"
// https://www.fileformat.info/info/unicode/char/FFE5/index.htm
string c1 = "¥";
string c2 = "\uffe5";
// ffe5:¥ == ¥:True
Console.WriteLine("{0:x4}:{1} == {2}:{3}", (int)c1[0], c1, c2, c1 == c2);
投稿者 KOZ  (社会人)
投稿日時
2022/7/25 11:58:30
>↑ 半角のはずです。
2022/7/25 09:47:19 の投稿では全角になっていますよ。
var dst = before.Replace("¥", "").Replace(",", "");
"¥" が半角ならエスケープ文字なのでコンパイルエラーになります。
>↑ 比較した所、マッチしませんでした????
> なぜマッチしないのか、私のレベルでは理解できませんでした。
違う文字だからです。
2022/7/25 09:47:19 の投稿では全角になっていますよ。
var dst = before.Replace("¥", "").Replace(",", "");
"¥" が半角ならエスケープ文字なのでコンパイルエラーになります。
>↑ 比較した所、マッチしませんでした????
> なぜマッチしないのか、私のレベルでは理解できませんでした。
違う文字だからです。
投稿者 ケンケン  (社会人)
投稿日時
2022/7/25 11:52:58
c1 と c2 を比較してみてください。
↑ 比較した所、マッチしませんでした????
なぜマッチしないのか、私のレベルでは理解できませんでした。
↑ 比較した所、マッチしませんでした????
なぜマッチしないのか、私のレベルでは理解できませんでした。
投稿者 ケンケン  (社会人)
投稿日時
2022/7/25 11:42:55
全角の"¥" や "," を使っているんでしょうか?
↑ 半角のはずです。
↑ 半角のはずです。
投稿者 KOZ  (社会人)
投稿日時
2022/7/25 11:16:28
全角の"¥" や "," を使っているんでしょうか?
c1 と c2 を比較してみてください。
string before = 1000.ToString("C");
Console.WriteLine("元データ: {0}", before);
var numberFotmat = System.Globalization.CultureInfo.CurrentCulture.NumberFormat;
string yen = numberFotmat.CurrencySymbol;
string comma = numberFotmat.CurrencyGroupSeparator;
string after = before.Replace(yen, "").Replace(comma, "");
Console.WriteLine("{0} → {1}",before, after);
char c1 = '\\';
char c2 = yen[0];
Console.ReadKey();
c1 と c2 を比較してみてください。
投稿者 ケンケン  (社会人)
投稿日時
2022/7/25 10:47:28
すみません。
ことば足らずでした。
ヾ(_ _。)
ことば足らずでした。
ヾ(_ _。)
投稿者 魔界の仮面弁士  (社会人)
投稿日時
2022/7/25 10:42:25
元質問は
『¥111,000 を 111000 に編集』
であって、
『\1,000 を 1000 に編集』
ではなかったはずですよね?
『¥111,000 を 111000 に編集』
であって、
『\1,000 を 1000 に編集』
ではなかったはずですよね?
投稿者 ケンケン  (社会人)
投稿日時
2022/7/25 09:48:40
元データ: \1,000
参考ロジック: \1,000
新ロジック: 1,000
続行するには何かキーを押してください . . .
参考ロジック: \1,000
新ロジック: 1,000
続行するには何かキーを押してください . . .
投稿者 ケンケン  (社会人)
投稿日時
2022/7/25 09:47:19
string after;
string before;
before = 1000.ToString("C");
Console.WriteLine("元データ: {0}", before);
var dst = before.Replace("¥", "").Replace(",", "");
System.Console.WriteLine("参考ロジック: {0}", dst);
//↑ やはりだめで、色々と調べたら
string yen = before.Substring(0, 1);
after = before.Replace(yen, string.Empty);
//↑ この様なロジックになりました。
回答ありがとうございました。
私も、色々調べましたが、円マークは癖がありますね・・・・・
string before;
before = 1000.ToString("C");
Console.WriteLine("元データ: {0}", before);
var dst = before.Replace("¥", "").Replace(",", "");
System.Console.WriteLine("参考ロジック: {0}", dst);
//↑ やはりだめで、色々と調べたら
string yen = before.Substring(0, 1);
after = before.Replace(yen, string.Empty);
//↑ この様なロジックになりました。
回答ありがとうございました。
私も、色々調べましたが、円マークは癖がありますね・・・・・
投稿者 魔界の仮面弁士  (社会人)
投稿日時
2022/7/25 09:02:43
https://paiza.io/projects/3uHN7uHlNU9C4b6ijmyorA
投稿者 魔界の仮面弁士  (社会人)
投稿日時
2022/7/22 16:06:16
Replace メソッドでは駄目ですか?
https://docs.microsoft.com/ja-jp/dotnet/api/system.string.replace?view=netframework-4.8#system-string-replace(system-string-system-string)
https://docs.microsoft.com/ja-jp/dotnet/api/system.string.replace?view=netframework-4.8#system-string-replace(system-string-system-string)
投稿者 ケンケン  (社会人)
投稿日時
2022/7/22 12:46:03
C#
文字 ¥111,000 を 111000 に編集したのですが
いい方法が有りますか?
何方か分かる方ご教授お願いいたします。
文字 ¥111,000 を 111000 に編集したのですが
いい方法が有りますか?
何方か分かる方ご教授お願いいたします。
円サインは色々と勉強になりました。
ありがとうございます。