文字列を数える

文字列を数える関数です

LENGTH(文字列)

文字列
対象となる文字列
引数
文字列: 数える文字列 (もしくは配列変数)
戻値
文字数 (配列変数時は配列サイズを返す)
※ バイト処理の場合は LENGTHB

字列の文字数を取得できます。
COPY関数を利用する時に、
コピーする文字数を算出するために利用されることが多いです。

文字数取得するサンプル
//「22」が表示されます
mojiretu = "UWSCのサンプルを有効活用するアカサタナハ"
NUM = LENGTH(mojiretu)
PRINT NUM

また、配列サイズからFORの回数を取得するために利用することもあります。
これにより配列数分繰返しを行えます。

配列のサイズを取得する
//「6」が表示されます
HASHTBL A

A["ア"] = 1
A["カ"] = 3
A["サ"] = 5
A["タ"] = 4
A["ナ"] = 2
A["ハ"] = 9

PRINT LENGTH(A)

タグ

2012年3月20日 | コメントは受け付けていません。 |

カテゴリー:逆引き関数

文字列のコピー

文字列の一部をコピーする関数です

COPY(文字列,開始位置,コピーする文字数)

文字列
対象となる文字列
開始位置
コピーの開始位置を先頭からの文字数で指定
コピーする文字数
何文字目までコピーするかを指定

れによって、文字列の任意の部分を取得できます。
※ バイト処理の場合は COPYB です。
また、POS関数LENGTH関数と連動させて、利用されることが多いです。
EXCEL関数を多用される方には、利用シーンが沢山見つかるでしょう。

名前だけを取得するサンプル
//常に姓と名の間にスペースがある前提
mojiretu = "山田 まりお"
STR = COPY(mojiretu,POS(" ",mojiretu)+1,LENGTH(mojiretu))
PRINT STR

タグ

2012年3月18日 | コメントは受け付けていません。 |

カテゴリー:逆引き関数

ペーストする文章を管理したい

ペーストする文章を管理したい
いつも決まった文をペーストしたい場面はどんな業務でもありますね。

でも、そのためにテキストファイルに文章を保存するのは
作成するのも、管理するのも大変です。
Excelに保存する手もありますが、セル内に改行を施すと、
ダブルクォテーション(“)が入ったりと厄介です。
じゃあ、コピー&ペーストするためのソフトウェアでもインストールするかというと
そこまででもない、探すのが大変だ、等々悩みの種も尽きません。


そこでUWSCの基本機能だけを使って簡単な文章管理スクリプトを作ってみましょう。

SELECT SLCTBOX(SLCT_BTN,0,"どの言葉の挨拶を返しますか","日本語","英語","フランス語","スペイン語","ドイツ語")
CASE SLCT_1
 STRING = "こんにちは"
CASE SLCT_2
 STRING = "Hello"
CASE SLCT_3
 STRING = "Bonjour"
CASE SLCT_4
 STRING = "Buenos dias"
CASE SLCT_5
 STRING = "Guten Tag"
DEFAULT
 STRING = "無し"
SELEND
SENDSTR(0,STRING)
MSGBOX("「" + STRING + "」がクリップボードに送信されました。")

単文を返すだけの簡単なスクリプトです。
しかし、数パターンだけしかないのならばこれで十分です。
STRINGの文字列には改行(“< #CR>“)も含められるので長文にも使用できます。

では、次に応用バージョンとして、
その場で入力した文字を埋め込んでクリップボードに送るスクリプトを考えてみましょう。

先ほどの各国語の挨拶のあとに、自分の名前が出るようにしてみます。
ただし、日本語には日本語の名前、それ以外の言葉ではアルファベットで出るようにして下さい。

つまり、入力が2つあるということです。

こんな感じになります。

この投稿の続きを読む »

タグ

2012年3月3日 | コメントは受け付けていません。 |

カテゴリー:Q&A

このページの先頭へ