Vim6スクリプトお勉強スレat UNIX
Vim6スクリプトお勉強スレ - 暇つぶし2ch331:名無しさん@Vim%Chalice
03/02/10 04:12
正規表現で制御文字そのものを表すatomって無いんでしょうか?
<Esc>, <Tab>, <CR>, <BS>は既に存在する(\e, \t, \r, \b)んですが、
^Jなどは表現できないですよねぇ…?

例えば、レジスタaに入ってる文字列から<Ctrl-J>を削除しようとした時に
   substitute(@a, '^@', '', 'g')
のように、関数内で<Ctrl-V><Ctrl-J>して直接char codeを入れちゃうと
実行時にエラーになってしまうので…
# ^@の部分が<Ctrl-V><Ctrl-J>です。
# ^@は改行を意味するのでsubstitute()の呼び出しが無効になります。
<Ctrl-V><Ctrl-J>の代わりに\rや[:cntrl:]で置換しようとしてもできませんでした。

文字を直接ascii codeで指定できたりすると良いんですけどね…
\0x0a (← ctrl-J)みたいな感じで (\0x61なら'a'になるみたいな)


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch