まとめて特定の組合わせの文字列をつくりたい。

まとめて特定の組合わせの文字列をつくりたい。
具体的には、アフィリエイト用のキーワードを作りたいと思っています。
例) 

Aグループ
FX
株式
日経225
先物
Bグループ
登録
入会
口座開設
比較

それぞれのグループのワードを全て組合わせたキーワードを作成したいです。
FX 登録、FX 入会、FX 口座開設、FX 比較、株式 登録、株式 入会・・・
といった具合です。よろしくお願いします。

EXCELでもできないことはありませんが、
すべての組合せをいちいちやるのは大変ですね。

また、VBAを利用する方法がありますが、
UWSCと較べると少しハードルが高いようです。

UWSCならば、FOPEN関連のスクリプトを使えば簡単にできます。
前提として、
Aグループのワードを1語づつ改行したテキストファイルをA.txt
同様にBグループをB.txtとします。

PRINTで組合せを表示するサンプル

///ファイルオープン
fid	= FOPEN("A.txt", F_READ)
fid2	= FOPEN("B.txt", F_READ)

For KAISU_A = 1 to FGET(fid, -1)

	STR_A = FGET(fid, KAISU_A)	//A.txtのデータを取得
	For KAISU_B = 1 to FGET(fid2, -1)

		STR_B = FGET(fid2, KAISU_B)	//B.txtのデータを取得

		PRINT STR_A + " " + STR_B	//AとBを組合わせる

	NEXT
NEXT
FCLOSE(fid)
FCLOSE(fid2)

解説

使用している関数はFOPEN,FGET,FOR~NEXTになります。
これら個々の説明は関数一覧などを参照していただくとして、
サンプルの中で、覚えておきたいのは、
FGET(fid, -1)です。

通常、FGET関数は、fidの後は行番号を指定しますが、
「-1」の場合、ファイルの行数を返します。

これにより、ファイルの行数分、上からデータを取得できます。
このテクニックは非常に有効なので、覚えておくと便利です。

後は、すべての組合せを実現するためにFORの中でFORをかます
というテクニックですべての組合せを行えます。

さらに便利に使いたい場合は、
A.txtをフォームから生成させる方法などがあります。

関連情報:

  1. 部分的にダブルクォーテーションで括られたCSVファイルを整形したい


続きは、ログインもしくは、登録してください




このページの先頭へ