- PR -

ASP2.0.net(C#)で半角カナを全角カナに変換するには?

1
投稿者投稿内容
未記入
ベテラン
会議室デビュー日: 2005/07/14
投稿数: 66
投稿日時: 2006-02-08 16:45
いつもお世話になってます。

ASP.netで半角カナを全角カナに変換したいのですが
やり方がわかりません。
半角文字を全角文字に変換はできるのですが、
半角カナのみを全角カナに変換する方法が見つかりません。

よろしくお願いします。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-02-08 17:10
引用:

未記入さんの書き込み (2006-02-08 16:45) より:

半角カナのみを全角カナに変換する方法が見つかりません。


考え方は一緒ですよね。

  C# による半角 <-> 全角変換の方法は?

半角カナって何文字あると思います?
そう考えると楽なものです。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
未記入
ベテラン
会議室デビュー日: 2005/07/14
投稿数: 66
投稿日時: 2006-02-08 17:19
いつもありがとうございます。

簡単にはできず、
自作で作成するしかないのですね。

がんばってみます。
Hongliang
ぬし
会議室デビュー日: 2004/12/25
投稿数: 576
投稿日時: 2006-02-08 18:06

Regex.Replaceで半角カナの範囲を引っ掛けてMatchEvaluatorでStrConv/LCMapString……かな。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2006-02-08 19:36
試していないけど、ここのサンプルで、“ひらがな”に変換後、“カタカナ”にしたら、どうなります?まぁ、必要な“ひらがな”があるなら、使えないんですけど。
hirotow
会議室デビュー日: 2006/11/19
投稿数: 1
投稿日時: 2007-12-27 11:48
コード:
static string zenhan_table_w = "アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヲン゛゜ァィゥェォャュョッABCDEFGHIJKLMNOPQRSTUVWXYZ123456789!#$%&’()+−=@[]^_‘{}〜。「」『』、・ー”";
static string zenhan_table_n = "アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヲン゙゚ァィゥェォャュョッABCDEFGHIJKLMNOPQRSTUVWXYZ123456789!#$%&'()+-=@[]^_`{}~。「」「」、・-\\\\"";

static string dakuon_table_w = "ガギグゲゴザジズゼゾダヂヅデドバビブベボ";
static string dakuon_table_n = "カキクケコサシスセソタチツテトハヒフヘホ";
static string handaku_table_w = "パピプペポ";
static string handaku_table_n = "ハヒフヘホ";
public static string MakeShort(string name)
{
 for (int i = 0; i < dakuon_table_n.Length; i++)
 {
  name = name.Replace(dakuon_table_w[i].ToString(), dakuon_table_n[i] + "゛");
 }
 for (int i = 0; i < handaku_table_n.Length; i++)
 {
  name = name.Replace(handaku_table_w[i].ToString(), handaku_table_n[i] + "゜");
 }
 for (int i = 0; i < zenhan_table_n.Length; i++)
 {
  name = name.Replace(zenhan_table_w[i], zenhan_table_n[i]);
 }
 name = name.Replace(" ","");
 return name;
}


みたいなコードで変換可能です。
まず、濁音や半濁音を2文字に(ex:ガッ!→カ゛ッ!)します。
そのあとは各文字を半角に変換します。
1

スキルアップ/キャリアアップ(JOB@IT)