Home >XModules >

必要なシステム

ダウンロード

Version 1.3 -- 2017-02-24

古いバージョン

依存モジュール

XText

XText は、AppleScript のテキストオブジェクトを拡張する、AppleScript ライブラリです。

文字列の置換や分割、空白の除去など、様々なテキスト操作をオブジェクト指向のスタイルで行うことができます。

Using Class Methods

use XText : script "XText"

tell XText
store_delimiters() -- storing AppleScript's text item delimiters

log (replace for "this is a pen" from "pen" by "flower")
(*this is a flower*)

set a_list to split("this is a pen", space)
log a_list -- (*this, is, a, pen*)
log join_list(a_list, "-") -- (*this-is-a-pen*)

log strip(" this is a pen ") -- (*this is a pen*)
log strip_beginning(" this is a pen ")
-- {" ", "this is a pen "}
log strip_endding(" this is a pen ")
-- {" "," this is a pen"}

log formatted_text("$1 is $2.", {"XText", "useful"})
(*XText is useful.*)

restore_delimiters() -- restoring AppleScript's text item delimiters
end tell

Using Instance Methods

use XText : script "XText"

(*== Make a XText Instance *)
set a_text to XText's make_with("this is a pen")

(*== Replacing *)
log a_text's replace("pen", "flower")
(*[XText] this is a flower*)

(*== Appending and Prepennding *)
set spaced_text to a_text's prepend(return & tab)
set spaced_text to spaced_text's push(space)

log spaced_text
(*[XText]
this is a pen *)

(*== Stripping *)
log spaced_text's strip() -- (*[XText] this is a pen*)

set a_result to spaced_text's strip_beginning()
log item 1 of a_result
(*
*)
log item 2 of a_result
(*[XText] this is a pen *)

set a_result to spaced_text's strip_endding()
log item 1 of a_result
(* *)
log item 2 of a_result
(*[XText]
this is a pen*)

(*== Check Contents *)
log a_text's starts_with("this") -- (*true*)
log a_text's ends_with("this") -- (*false*)
log a_text's include("is") -- (*true*)
log a_text's offset_of("is") -- (*3*)

(*== Make a list with splitting *)
log a_text's as_xlist_with(space)
(*[XList]
1 this
2 is
3 a
4 pen*)

log a_text's as_list_with(space) -- (*this, is, a, pen*)

(*== Obtain a part of text *)
log a_text's character_at(1) -- (*[XText] t*)
log a_text's word_at(1) -- (*[XText] this*)
log a_text's paragraph_at(1) -- (*[XText] this is a pen*)

(*== Obtain of AppleScript's text properties *)
log character 1 of a_text -- (*t*)
log word 1 of a_text -- (*this*)
log length of a_text -- (*13*)

(*== Obtain content as AppleScript's text *)
a_text's as_unicode()
a_text's as_string()

更新履歴

  • 1.3 -- 2016-10-19
    • OS X 10.9 で登場した AppleScript Libraries で使えるようにした。
    • ModuleLoader への依存性をなくした。
    • OS X 10.9 以降が必要です。
  • 1.2.2 -- 2015-09-04
    • character_at は、XText のインスタンスを返すようにした。
  • 1.2.1 -- 2012-04-22
    • formattd_text の第2引数で、text を渡せるようにした。
    • strip, strip_beginning, strip_endding で、BEL (character id 7) も除去するようにした。
    • ヘルプをアップデート。
      • Mac OS X 10.6 で、"Edit Script" リンク、ハンドラのコピーリンクが動作しない不具合を修正。
  • 1.2 -- 2010-02-02
    • ModuleLoader 2.1 以降に対応。
    • ShowHelpBook への依存性を無くした。
    • join を join_list に変更。
  • 1.1 -- 2008-03-19
    • 日本語マニュアルを追加
    • StringEngineへの依存性をなくした。
    • テキスト処理の為のクラスメソッドを追加
  • 1.0 -- 2007-07-10
    • First Release