半角の数値を全角に変換することは可能でしょうか?
ご存知のかたよろしくお願いします。

A 回答 (4件)

ASPでどの言語を使われているかわかりませんが、


一般的なVBScriptでしたら、BASP21を利用して

Function han2zen( str )
 Set objBasp = Server.CreateObject("basp21")
 han2zen = objBasp.StrConv( str, 4 )
 Set objBasp = Nothing
End Function

という関数を作ってあげれば全角へ変換できます。
#BASP21については参考URLのページをご覧になって下さい

参考URL:http://www.hi-ho.ne.jp/~babaq/
    • good
    • 0
この回答へのお礼

ていねいな説明ありがとうございます。
これで試してみようと思います。
参考のURLも参考にさせて頂きます。
ありがとうございました。

お礼日時:2001/02/20 12:02

BASP21のStrConvメソッドを利用すると一発ですよ。



参考URL:http://www.hi-ho.ne.jp/babaq/basp21.html#0022
    • good
    • 0
この回答へのお礼

ありがとうございます。
さっそく試してみます。

お礼日時:2001/02/20 12:03

何のアプリケーションでのことでしょうか。


エクセルでやりたいのでしたら、「楽々マクロ」というアドインソフトがあります。
これでしたら簡単に全角を半角、半角を全角に置き換えることができます。
(もし、アクセスのデータでしたら、エクセルへ一旦インポートして、変換後にアクセスへ戻してはどうですか。)

参考URLを見てください。
ご希望に添えれば良いのですが。

参考URL:http://www.vbalab.net
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
>何のアプリケーションでのことでしょうか。
VisualInterDevです。
急いでいたもので、言葉が足りなくてすみませんでした。

お礼日時:2001/02/20 11:59

IMEの場合は、入力モードを全角英数にして数字を入力して、F6かF7キィーを押します。

    • good
    • 0
この回答へのお礼

回答ありがとうございます。
IMEではなくプログラムで変換する方法です。
言葉が足りなくてすみませんでした。

お礼日時:2001/02/20 11:51

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q半角カナを全角カナに変換したい

表題の通りです。
先輩から引き継いだエクセルのデータが、全角カナと半角カナとの両方を、使い分けなどではなく使用しているものだったので、半角カナを全部、全角カナに変換したいと考えています。
置換機能で50音全部を置換するのは大変ですので、一度に変換する良い方法があれば教えてください。
また、全角アルファベットを、普通の英字(半角アルファベット?)にも変換したいと思っています。

Aベストアンサー

=JIS(セル番地)
で全角に
=ASC(セル番地)
で半角になります。

Qデータを書き込む際、全角数値を半角で登録するには

ASPにおいてSQL-SERVERにデータを書き込む際に全角数値だったら半角数値になおして書き込むことは可能でしょうか??

例:1234→1234

もし可能ならばご教授お願いします!!!よろしくお願いします!!!

ちなみに理由はHTMLフォーム上で電話番号等数値入力のコントロールで全角で入力してしまうことがある為、対応として全角を半角で登録ってことになりました・・・。現在はバイト数で半角全角チェックを行っていますが、このチェックはなくすことになります。。。だれか助けてください。。。IMEの制御は行っていません。サーバはWINDOWS2000、処理ブラウザはIE、DBはSQL-SERVER2000を使用しています。

Aベストアンサー

VBだと、StrConvという変換関数が存在するのですが、ASPにはそれがないので、関数を作るしかないと思います。
こんなサンプルソース&解説のページを見つけましたので、ご参考にしてください。

参考URL:http://www.dolphinnetservice.ne.jp/AcrobatASP/1.asp

Q全角半角変換 C++/CLI

C++/CLI(VC++2008) で
(1)たとえば 東京bay を 東京bay にという風に全角半角混在の文字列のなかの半角文字を全角文字に変換するにはどうすればよろしいでしょうか
(2)全角半角混在の文字列のなかの全角文字を半角文字に変換するにはどうすればよろしいでしょうか
 

Aベストアンサー

1. VBのStrConvを使う。

#using "Microsoft.VisualBasic.dll"
using namespace Microsoft::VisualBasic;

String^ s1 = L"東京bay";
// 全角文字へ
String^ s2 = Strings::StrConv(s1, VbStrConv::Wide, 0);
// 半角文字へ
String^ s3 = Strings::StrConv(s2, VbStrConv::Narrow, 0);


2. Win32 API LCMapStringを使う。

#include "windows.h"
#include "vcclr.h"
#pragma comment(lib, "kernel32.lib")

String^ s1 = L"東京bay";
pin_ptr<const wchar_t> p1 = PtrToStringChars(s1);

array<wchar_t>^ b2 = gcnew array<wchar_t>(s1->Length + 1);
pin_ptr<wchar_t> p2 = &b2[0];
::LCMapStringW(LOCALE_USER_DEFAULT, LCMAP_FULLWIDTH, p1, -1, p2, b2->Length);
String^ s2 = gcnew String(p2);

array<wchar_t>^ b3 = gcnew array<wchar_t>(s1->Length + 1);
pin_ptr<wchar_t> p3 = &b3[0];
::LCMapStringW(LOCALE_USER_DEFAULT, LCMAP_HALFWIDTH, p2, -1, p3, b3->Length);
String^ s3 = gcnew String(p3);

1. VBのStrConvを使う。

#using "Microsoft.VisualBasic.dll"
using namespace Microsoft::VisualBasic;

String^ s1 = L"東京bay";
// 全角文字へ
String^ s2 = Strings::StrConv(s1, VbStrConv::Wide, 0);
// 半角文字へ
String^ s3 = Strings::StrConv(s2, VbStrConv::Narrow, 0);


2. Win32 API LCMapStringを使う。

#include "windows.h"
#include "vcclr.h"
#pragma comment(lib, "kernel32.lib")

String^ s1 = L"東京bay";
pin_ptr<const wchar_t> p1 = PtrToStringChars(s1);

a...続きを読む

QASPで全角数字を半角数字にするには?

ASPでページ上のテキストボックスに入力された全角数字を、
半角数字に変換(置換え?)することはできますか?

Aベストアンサー

テキストボックスが置いてあるページから次のページに移動する際にサーバ上で処理するっていうんなら BASP21 の StringConv 関数ってのはどうでしょうか。
http://www.hi-ho.ne.jp/babaq/basp21.html

VBScript だけで行うのであればこんなのを見つけました。
http://www.ac.cyberhome.ne.jp/~mattn/AcrobatASP/1.html

Qワードで数字の全角を半角に(カタカナは全角のままで)変換するには?

ワードに100ページの文章があります。全角数字が散在しています。全角数字を半角に直したく、半角操作をかけるとカタカナも半角に変換されてしまいます。数字だけ変換されるようにするには、どのようにしたらいいのでしょうか。ワードの、書式メニュー→文字種の変換→半角、で操作をおこないました。

Aベストアンサー

メニューの[編集]→[検索]又は[Ctrl+F]で検索タブが開きます。

[検索する文字列]に[0-9]
(0、9、は全角。[ ]、-、は半角)

[見つかったすべての項目を強調表示する]にチェックを入れます。

[オプション]ボタンを押し[検索オプション]が開きます。
[ワイルドカードを使用する]にチェックを入れると[あいまい検索]のチェックが外れます。

[すべて検索]ボタンを押して、文書の中の全角数字の全てが選択状態になったら、
メニューの[書式]→[文字種の変換]→[半角]を選択します。

Q全角カタカナを半角カタカナにする方法・・・

皆様、ご指導宜しくお願い致します。

WEBの世界で有り得るのかどうか、まずはそこから疑問になりますが、どうすればいいのか思いつかないので
お力をお貸し下さい。

DB:oracle8.1.X
言語:asp

あるデータベースのデータが半角カタカナで登録されてしまっています。
フォームから検索条件を入れて、該当するデータを抽出したのですが、フォームのデータとデータベースのデータをどう比較すればいいのでしょうか?

半角カタカナを全角にする方法は、basp21を使えばできるのですが、SQLに全角のカタカナを値として渡しても意味が無いので。。。

SQL文を実行する時点で、値の形をイコールにしたいのです。

どなたか良い方法がありましたら、教えてください。

Aベストアンサー

すみません、質問の意図がよく理解できないのですが(批判ではなく、単純に掴めません)、何故半角カタカナを一度全角に変換してしまうのでしょうか?

DBに半角で登録がしてあるのであれば半角の検索条件が入力されたら全角に変換せずそのまま比較すればうまくいくと思います。
またDBに半角で登録がしてある項目と、検索条件で全角で入力された文字を一致させたければBASP21で半角に変換してからOracleに問い合わせをすれば問題がなさそうに思えます。

Qキーボードでの「英数(全角/半角)」変換

 言語変換関係の質問は、「言語バー」「キーボード」関係で、多数あるのですが、どれが自分の探している症状なのか分からないので、新しく質問します。
 PCはSOTECのWV2150Cで、OSはWindowsXPで、ローマ字入力しています。
 キーボードによる、「英字和字」変換と、「英字の全角・半角」変換が、自分の意図しない変換に、どういうわけか、時々変わってしまいます。言語バーをマウスでクリックするのは面倒なので、キーボードで操作したいのですが、それが、コントロール不能になってしまうわけです。
 具体的には、まず「英字の全角」と「和字の全角」の相互変換ですが、うまくいっているときは、通常和字にしているときキーボードの「英数・CapsLock」を押すだけで「英字全角」に変換できます。また押せば、元に戻せます。しかし、何かの拍子で、このキーを押すと、「英字の半角」になってしまい、どうしても「英字の全角」になりません。しかし、時間が経って、いつのまにか、相互変換できるように戻っていることもしばしばです。
 「英字の半角」はキーボード上部の「半角/全角」キーで「英字半角」と「和字全角」とが相互変換できるので、「英数・CapsLock」キーでは、「和字全角」と「英字全角」の相互変換を維持したいわけです。というより、このキーの操作を、どちらも使えるよう、自分でコントロールしたいわけです。
 自分でコントロールするためには、「英数・CapsLock」キーを押すと、何かの拍子で、「英字全角」になったり「英字半角」になったりする、その「何かの拍子」が分かればいいと思うのですが、それが、分かりません。
 PCの種類によって、キーボード操作は違うのかもしれませんが、一つ、よろしくお願いいたします。

 言語変換関係の質問は、「言語バー」「キーボード」関係で、多数あるのですが、どれが自分の探している症状なのか分からないので、新しく質問します。
 PCはSOTECのWV2150Cで、OSはWindowsXPで、ローマ字入力しています。
 キーボードによる、「英字和字」変換と、「英字の全角・半角」変換が、自分の意図しない変換に、どういうわけか、時々変わってしまいます。言語バーをマウスでクリックするのは面倒なので、キーボードで操作したいのですが、それが、コントロール不能になっ...続きを読む

Aベストアンサー

#2です。

質問者さんの使用法なら、必要はないでしょうが、
 >このキーの操作を、どちらも使えるよう、自分でコントロールしたい
ということなので、補足しておきます。

「全角英数」/「半角英数」を基本設定の優先順位と逆のほうにしたいときは、[Caps Lock]の後、[Shift]+[無変換]で行えます。

なお、ご存じかと思いますが、「全(半)角英数」から「ひらがな」に復帰するには、[Caps Lock]のほか[無変換]でも[カタカナ ひらがな]でも可能です。

ひとつ注意が必要なのは、これもご存じかも知れませんが、次の点です。
「全(半)角英数」モードで入力作業をした後、「ひらがな」に復帰することなく、[半角/全角]によって「直接入力」モードにすると、
次に「ひらがな」に復帰しようとしても、[半角/全角]を押したのでは戻れず、「全(半)角英数」になるだけです。
この場合、その上で[Caps Lock]を押せばいいのですが、「直接入力」から[カタカナ ひらがな]を2回押す方法もあります。
とにかく、[半角/全角]を何度押しても行ったり来たりするばかりで、「ひらがな」には戻れません。

御参考までに、次のような操作法も考えられます。
1.「ひらがな」→「全(半)角英数」は[Caps Lock]
2.「ひらがな」→「直接入力」は[半角/全角]
これは当たり前ですね。

3.「全(半)角英数」→「ひらがな」は[カタカナ ひらがな]
4.「直接入力」→「ひらがな」も[カタカナ ひらがな]
 * 1回押して「全(半)角英数」になったときは、続けてもう1回押す。
 (ややこしければ、常に2連打することにしてもよい。)

つまり[半角/全角]や[Caps Lock]をON/OFに使うのではなく、それぞれ一方通行にしておいて、
「ひらがな」に復帰するときはいつも[カタカナ ひらがな]を使うという方法です。

#2です。

質問者さんの使用法なら、必要はないでしょうが、
 >このキーの操作を、どちらも使えるよう、自分でコントロールしたい
ということなので、補足しておきます。

「全角英数」/「半角英数」を基本設定の優先順位と逆のほうにしたいときは、[Caps Lock]の後、[Shift]+[無変換]で行えます。

なお、ご存じかと思いますが、「全(半)角英数」から「ひらがな」に復帰するには、[Caps Lock]のほか[無変換]でも[カタカナ ひらがな]でも可能です。

ひとつ注意が必要なのは、これもご存じかも知れ...続きを読む

QVBScript 全角英数記号→半角英数記号に

ASP(VBScript)での開発をしています。

全角英数記号を、半角英数記号に変換したくて、以下のメソッドを
作りました。

Function FunFullToHalf(ByVal StrTarget)
Dim ObjBASP21
Dim StrHalf

Set ObjBASP21 = Server.CreateObject("basp21")
StrHalf = ObjBASP21.StrConv(StrTarget,8)

FunFullToHalf = StrTarget
End Function

しかし、これだと、全角カタカナまで半角になってしまい、困っています。
回避策を教えていただけないでしょうか。

Aベストアンサー

だったら関数を自作すれば?
所詮変換の方向が [全角]→[半角] なんだし、変換してもよい文字の一覧が質問者の頭の中にあるんだろうし。

泥臭いけれど、あらかじめ変換候補としている文字の一覧と、変換後イメージの一覧を持っておいて、対象文字列の先頭から順に一文字ずつ変換するって方法。

' 変換してもよい文字の一覧
Const wideList = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890-=_"
' 変換後の文字一覧(変換してもよい文字の一覧と同じ並び、同じ数にしておく)
Const narrowList = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890-=_"

Dim src
src = "Aあア1-ーBk_" ' これを変換する。あアー の3文字以外は変換したい。
Dim dest
dest = conv(src) ' 変換する conv 関数を呼び出す
WScript.Echo dest

' 変換前の文字列を受け取って、変換した文字列を返す
Function conv(aSrc)
  Dim returnValue

  ' ソース文字列を 1文字ずつ取り出す
  Dim srcPos
  For srcPos = 1 To Len(aSrc)
    Dim hit
    hit = False

    ' 変換候補リストを 1文字ずつ取り出す
    Dim listPos
    For listPos = 1 To Len(wideList)
      ' 比較して変換候補リストにあればフラグを立てる
      If Mid(aSrc, srcPos, 1) = Mid(wideList, listPos, 1) Then
        hit = True
        Exit For
      End If
    Next

    ' フラグが立っていれば変換し、立っていなければソースの文字を使用する
    If hit Then
      returnValue = returnValue & Mid(narrowList, listPos, 1)
    Else
      returnValue = returnValue & Mid(aSrc, srcPos, 1)
    End If
  Next

  conv = returnValue
End Function

だったら関数を自作すれば?
所詮変換の方向が [全角]→[半角] なんだし、変換してもよい文字の一覧が質問者の頭の中にあるんだろうし。

泥臭いけれど、あらかじめ変換候補としている文字の一覧と、変換後イメージの一覧を持っておいて、対象文字列の先頭から順に一文字ずつ変換するって方法。

' 変換してもよい文字の一覧
Const wideList = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890-=_"
' 変換後の文字一覧(変換し...続きを読む

QALT+半角/全角を押さなければ、文字を変換できません。

PCを立ち上げ、文字を最初に入力しようとすると、英数字で入力されます。

そこで、日本語に変換しようとするのですが、ALT+半角/全角を押さなければ、文字を変換できません。


その後は、半角/全角を押すだけで、変換できるようになります。



一番初めから、半角/全角を押すだけで、変換できるようにするためにはどうすればいいですか?



PC
dell 1525
WindowsVista Home Premium
http://www.sd-dream.com/pasocompass/PC/Dell/Inspiron1525.html

Aベストアンサー

自分の場合は既定の言語を
”日本語(日本)-日本語”から
”日本語(日本)-Microsoft IME”
にしたら半角/全角だけで変換できるようになりました。

Q半角カナだけが入力できるは可能?

半角カナだけ入力できるテキストボックスは
作成可能でしょうか?

Vbscript だけを使って実現したいと思います。

Aベストアンサー

ちょっと面倒なやり方ですが、以下の様なものはいかがでしょう?
テキストボックスのonblurイベント時にVBScriptでチェックしています。

----サンプル-----
<html>
<head>
<title>半角カナチェック</title>
<script language="vbscript">
Function KanaCheck(strTarget)
Dim obj, i, strChar, intAscBuff
For Each obj in frm1
If InStr(obj.name, strTarget) > 0 then
For i = 1 To Len(obj.value)
strChar = Mid(obj.value, i, 1)
intAscBuff = Asc(strChar)
If intAscBuff < Asc("ア") Or intAscBuff > Asc("ン") Then
If Not (intAscBuff = Asc("゛") Or _
intAscBuff = Asc("゜") Or _
intAscBuff = Asc(" ") Or _
intAscBuff = Asc("(") Or _
intAscBuff = Asc(")") Or _
intAscBuff = Asc("-") Or _
intAscBuff = Asc(",") Or _
intAscBuff = Asc(".") Or _
intAscBuff = Asc("\") Or _
intAscBuff = Asc("/") Or _
intAscBuff = Asc("「") Or _
intAscBuff = Asc("」")) Then
If intAscBuff < Asc("A") Or _
intAscBuff > Asc("Z") Or _
intAscBuff < Asc("0") Or _
intAscBuff > Asc("9") Then
KanaCheck = False
msgbox obj.name & "は半角カナ文字のみの入力となります。"
Exit Function
End If
End If
End If
Next
End If
Next
KanaCheck = True
End Function
</script>
</head>
<body>
<form name="frm1" method="post">
<input type="text" name="txt1" onblur="KanaCheck('txt1')">
<input type="text" name="txt2" onblur="KanaCheck('txt2')">
<input type="text" name="txt3" onblur="KanaCheck('txt3')">
</form>
</body>
</html>

ちょっと面倒なやり方ですが、以下の様なものはいかがでしょう?
テキストボックスのonblurイベント時にVBScriptでチェックしています。

----サンプル-----
<html>
<head>
<title>半角カナチェック</title>
<script language="vbscript">
Function KanaCheck(strTarget)
Dim obj, i, strChar, intAscBuff
For Each obj in frm1
If InStr(obj.name, strTarget) > 0 then
For i = 1 To Len(obj.value)
strChar = Mid(obj.value, i, 1)
intAscBuff = Asc(strChar)
If intAscBuff < Asc("ア") Or intA...続きを読む


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング