No.1
- 回答日時:
お望みの動作は文字ごとの一対一の置き換えですから、
わざわざ正規表現を使うことはないと思います。つか使ったほうが面倒でしょう。
tr なんかも入力として受け付けるのは正規表現じゃないですよ。
秀丸とxyzzyだとエディタのメニューに、全角→半角(あるいはその逆)の
項目があったりします。
たぶん他にもそういう機能をもったエディタはあると思います。
この回答への補足
ご回答ありがとうございます。
失礼しました。私の使用しているエディターにも、全角半角変換機能があります。
「どんな方法でもいいので処理したい」ではなく、「正規表現で処理したい」のです。環境(OSやエディタ)が変わっても、同様のことがしたいので。
> tr なんかも入力として受け付けるのは正規表現じゃないですよ。
確かに。一見文字クラスに見えますが、正規表現の文字クラスというわけではないのですね。PHPのstrtrも。
つまり、正規表現で、
$str =~ tr/a-zA-Z/a-zA-Z/;
が出来るでしょうか?
出来るはずないと思うのですが、念のため・・・。
No.2
- 回答日時:
私の愛用のsakuraエディタにもあります>変換機能。
全角カタカナだけとか全角英数のみとか指定もいろいろできるようになってます。参考URL:http://members.at.infoseek.co.jp/sakura_editor/i …
ご回答ありがとうございます。
申し訳ありません。私のエディター(EmEditor)にもあります。ただし、開いているファイルにしか使えないので、5000ファイルを処理する時、5000回繰り返さなければなりません。
grep置換対応なら、その必要はないと思ったのですが、よく考えてみたら、このような処理は正規表現でできないから、変換機能みたいなものが実装されているのですね。
よく考えてみたら、正規表現でできないから、trやstrtrがあるのですかね。
No.3ベストアンサー
- 回答日時:
> つまり、正規表現で、
> $str =~ tr/a-zA-Z/a-zA-Z/;
> が出来るでしょうか?
考え方だけ。
my %tbl = ('A' => 'A', 'B' => 'B', ... 'z' => 'z');
$str =~ s/([A-Za-z])/$tbl{$1}/ge;
こんな感じにいちいちテーブル参照すれば正規表現の置換でできます。
PHPにも置換を行うときに関数を呼び出せるのがあったと思うので
それを使えば同様のことができるはずです。
エディタの置換機能だとこういうのを持っているのはEmacsくらい?
ご回答ありがとうございます。
> エディタの置換機能だとこういうのを持っているのはEmacsくらい?
この回答を待ってました。viとかCUIのエディタならできるでしょうね。
つまり、Perl で言うところの、/e (←式を評価する)見たいな事を普通のエディタでやりたかったんですが、その場合、式を記憶させるフィールドが必要なので、出来るはずないですね。
納得しました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) capeofdragonと申します Excel2016を使っておりまして 半角又は全角の任意文字列が 2 2022/10/31 13:51
- Visual Basic(VBA) エクセルの数式で教えてください。 1 2023/07/31 15:49
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- Visual Basic(VBA) 特定の文字を簡単な操作で半角スペースに変換するか削除したい 2 2022/11/01 10:35
- その他(ソフトウェア) ソースネクストアプリをインストールし、製品登録で半角英数字が入力できない 5 2022/07/03 22:44
- Windows 10 WIN11 UPdate 3 2022/09/22 08:36
- Excel(エクセル) Excelで校閲をする方法はあるでしょうか(取扱説明書への掲載禁止用語の確認) 3 2022/06/11 22:51
- Android(アンドロイド) 海外のAndroid 端末の場合、日本語全角は、どう表示されるのでしょうか? 1 2022/10/02 21:16
- その他(Microsoft Office) WordやExcelで英数字のみ半角または全角にしたい 6 2022/08/03 08:18
- Access(アクセス) Accessのテキストボックスの入力文字制限 1 2023/01/18 20:43
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Perl 先頭のスペースを複数削除
-
Accessのテキストボックスの入...
-
住宅にカナを入力する際に丁目...
-
正しいメールアドレスの形式で...
-
英数字のみ全角から半角に変換
-
全角入力
-
よくアカウント等に使われる 半...
-
SQLServerのNULLのデータと空文...
-
正規表現で、全角文字を半角文...
-
「 _ _ 」の正式名称を...
-
VBAでの全角数字と半角数字の判...
-
char型全角数字から、int型半角...
-
文字列に半角・全角スペースが...
-
perl 初めてのプログラムにエラ...
-
エクセルにMicrosoft Barcode C...
-
プログラミングでは、半角括弧...
-
capeofdragonと申します Excel2...
-
Excel関数またはVBAでの質問に...
-
全角英数字の必要性が理解できない
-
封筒の宛先で縦書きの書き方
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
英数字のみ全角から半角に変換
-
住宅にカナを入力する際に丁目...
-
全角英数字の必要性が理解できない
-
Excel関数またはVBAでの質問に...
-
エクセルにMicrosoft Barcode C...
-
IEからEdgeへの移行に伴うIMEの...
-
VBA 文字に半角が含まれて...
-
COBOL・全角判定
-
プログラミングでは、半角括弧...
-
word差し込み印刷 半角カタカ...
-
メモ帳の段落の揃え方
-
よくアカウント等に使われる 半...
-
Accessのテキストボックスの入...
-
ダブルコーテーションの置換
-
エクセルでの”々”の扱い
-
小説の点々は……と繋がらなくて...
-
大文字と全角文字は同じ意味で...
-
[VBScript]バイト長の判定
-
封筒の宛先で縦書きの書き方
-
VBで、String型のデータが、...
おすすめ情報