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 (←式を評価する)見たいな事を普通のエディタでやりたかったんですが、その場合、式を記憶させるフィールドが必要なので、出来るはずないですね。
納得しました。
No.4
- 回答日時:
>5000ファイルを処理する時
エディタを使うよりも素直にPerlでやったほうが早いんじゃない?
ありがとうございます。
Perl使えばなんでもできちゃいます。
Perlがインストールされていない環境で、この処理をしたかったので。
No.2
- 回答日時:
私の愛用のsakuraエディタにもあります>変換機能。
全角カタカナだけとか全角英数のみとか指定もいろいろできるようになってます。参考URL:http://members.at.infoseek.co.jp/sakura_editor/i …
ご回答ありがとうございます。
申し訳ありません。私のエディター(EmEditor)にもあります。ただし、開いているファイルにしか使えないので、5000ファイルを処理する時、5000回繰り返さなければなりません。
grep置換対応なら、その必要はないと思ったのですが、よく考えてみたら、このような処理は正規表現でできないから、変換機能みたいなものが実装されているのですね。
よく考えてみたら、正規表現でできないから、trやstrtrがあるのですかね。
No.1
- 回答日時:
お望みの動作は文字ごとの一対一の置き換えですから、
わざわざ正規表現を使うことはないと思います。つか使ったほうが面倒でしょう。
tr なんかも入力として受け付けるのは正規表現じゃないですよ。
秀丸とxyzzyだとエディタのメニューに、全角→半角(あるいはその逆)の
項目があったりします。
たぶん他にもそういう機能をもったエディタはあると思います。
この回答への補足
ご回答ありがとうございます。
失礼しました。私の使用しているエディターにも、全角半角変換機能があります。
「どんな方法でもいいので処理したい」ではなく、「正規表現で処理したい」のです。環境(OSやエディタ)が変わっても、同様のことがしたいので。
> tr なんかも入力として受け付けるのは正規表現じゃないですよ。
確かに。一見文字クラスに見えますが、正規表現の文字クラスというわけではないのですね。PHPのstrtrも。
つまり、正規表現で、
$str =~ tr/a-zA-Z/a-zA-Z/;
が出来るでしょうか?
出来るはずないと思うのですが、念のため・・・。
お探しの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ランキング
-
英数字のみ全角から半角に変換
-
エクセルにMicrosoft Barcode C...
-
全角/半角キーをSendkeys関数で...
-
IEからEdgeへの移行に伴うIMEの...
-
VBA 文字に半角が含まれて...
-
UWSC教えて
-
VBで、String型のデータが、...
-
全角英数字の必要性が理解できない
-
char型全角数字から、int型半角...
-
word差し込み印刷 半角カタカ...
-
「一角」って何でしょうか
-
LaTeXで半角カンマと全角カンマ...
-
エクセルの認識機能 VLOOKUP関数
-
Excel2010英数字のみ半角にする...
-
SQLServerのNULLのデータと空文...
-
CString Format にて全角空白文...
-
プログラミングでは、半角括弧...
-
Word2007の全角文字、全角スペ...
-
.NET3.5におけるキーボードの「...
-
改行のないテキストを指定バイ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
英数字のみ全角から半角に変換
-
住宅にカナを入力する際に丁目...
-
エクセルにMicrosoft Barcode C...
-
プログラミングでは、半角括弧...
-
IEからEdgeへの移行に伴うIMEの...
-
全角英数字の必要性が理解できない
-
VBA 文字に半角が含まれて...
-
Accessのテキストボックスの入...
-
word差し込み印刷 半角カタカ...
-
COBOL・全角判定
-
全角入力
-
VB.net、テキストボックス入力...
-
COBOLでの全角文字の判定をした...
-
CString Format にて全角空白文...
-
メモ帳の段落の揃え方
-
ダブルコーテーションの置換
-
正規表現で、全角文字を半角文...
-
VBで、String型のデータが、...
-
よくアカウント等に使われる 半...
-
エクセルでの”々”の扱い
おすすめ情報