Textwellで正規表現を使い全文置換をするアクション replaceAll
山椒は小粒で。
Textwell 1.1.6文字の置き換えを行う小粒アクション。正規表現が使えます。
分類: 仕事効率化,ユーティリティ
価格: \300 (Sociomedia)
loc=T.range.loc; len=T.text.length; s=T.current.search(/(.+?) (.+)/); before=RegExp.$1; after=RegExp.$2; b=new RegExp(before,"mig"); text=T.text.replace(b,after); T("replaceRange",{ text:text, replacingRange:{len:len}, selectingRange:{loc:loc} })
登録リンクはこちら→ http://tinyurl.com/ln7tv8d
追記: 09:45 変換後語句に空白を含むことが出来るようにしました。
DraftPadのときは一行目と二行目を使って定義しましたが、文頭に戻るのが面倒なので、仕様を変更しました。カーソル行に「変換前 変換後」を空白で区切って並べます。つまり「バヌケ バスケ」と書きreplaceAllを実行すると、文中の「バヌケ」をすべて「バスケ」に変換します。思い立ったら全置換。うっかり書き間違えたときに便利ですね。
カーソル行を残したのは、変換後の語句を再利用することを想定しています。
取引先の会社名を「###」としておき、後から「### 民明書房様」と打つだけで業務連絡できるようになります。テンプレートな納品書や謝罪文を使い回したりできる。
さらに正規表現を駆使することで、それ系の用途でも無限の可能性を開いてくれます。たとえばURLアドレス行にリンクタグをつけたい場合、下記のように書いてreplaceAllを実行。もっとも、このアドレスの後ろに文章が続かず改行であることが条件ですが。
(http:.+) <a href="$1">$1</a>