• 締切済み

メタ文字の置換

 いま、半角の[が含まれているテキストがあります。  このテキスト中の[を、別の文字に置換したいと思っています。具体的には、全角の【に置換したいのですです。  [は正規表現上メタ文字になるためか、うまくいかないのです。マッチしないのです。s/でもtr/でもだめなんです。  どなたか、[を【に置換する表現を教えてください。

みんなの回答

noname#9414
noname#9414
回答No.4

基本的にshigatsu様の仰るとおりでいいと思います。 正規表現の場合、メタ文字はすべて'\'を付けて、 エスケープすれば、大丈夫です。 ついでに・・・ Perlをやっているようなので、いいサイトを紹介します。 リファレンスなので、結構使えると思いますよ。 #ただし、Perl4なので、一部変更する必要があります。 #それでも使い方などはわかりやすいのでは・・・ ではでは☆

参考URL:
http://www2n.biglobe.ne.jp/%7Ekajino/perl4ref/index.html
  • situ
  • ベストアンサー率33% (2/6)
回答No.3

実験してみました。 s/\[/【/; で大丈夫ですよ。

mishida
質問者

お礼

#2とあわせて、ためさせていただきます。

  • shigatsu
  • ベストアンサー率26% (511/1924)
回答No.2

正規表現なら \ でエスケープできませんでしたっけ? s/\[/【/g とか通りませんか?

mishida
質問者

お礼

ありがとうございます。 これから試してみます。

  • yosikun
  • ベストアンサー率43% (235/542)
回答No.1

テキストをワードで開いて[を【に置き換えたらできました・・・ってちょっと粗っぽい方法?

mishida
質問者

補足

 すみません。  状況を正しく伝えていませんでした。  FreeBSDサーバー上で、cronを利用して、定期的に自動で文章を整形しようと思ったのです。  そこで、開発言語をPerlとし、正規表現で一気になんとかできないものかと思ったのです。  よって、FreeBSD上で[を【などに置換できるのであれば、実はPerlにこだわっているわけではありません。シェルスクリプトでもいいのです。

関連するQ&A