English help on website



getlinecount( s1, n1, nReturn ) 関数(Ver9.34対応版)
目次関数(その他関数)− getlinecount( s1, n1, nReturn ) 関数
getlinecount関数は、文字列中の位置の行と余りを計算(行と桁に変換)します。(V8.94以降)
複数行の文字列中の位置を、行と桁に変換することに使うことができます。
パラメータ1(文字列型)
計算元となる、改行コードを含む複数行の文字列を指定します。

パラメータ2(数値型)
パラメータ1の文字列上の、先頭から数えた指定の文字の位置を指定します。
改行も含んで数えた1行目からの位置を指定します。
文字数の数え方はstrlenやstrstrと同じです。

パラメータ3(数値型の変数名)
行数が数えられた後の、余りの文字の位置(0から数えた桁位置)が格納される数値型の変数名を指定します。
例えば#aといった変数名を記述します。
#a+#bといったような式を指定することはできません。

返り値(数値型)
指定の文字の位置が、何行目にあるかを返します。
0から数えた行数を返します。

JavaScript
JavaScriptでは、パラメータ3はオブジェクトを指定し、オブジェクトのcolumnメンバに結果が返ります。


例えば、以下のように呼びます。
#nLine = getlinecount( "ABCD\nXYZ", 7, #nColumn );
"ABCD\nXYZ"という文字列があり、"Z"の位置は0から数えて7です。
"\n"が改行の複数行とすると、"XYZ"の行は0から数えて1の行にあります。
"Z"の文字は、"XYZ"の行頭の0から数えて2の位置にあります。
関数を呼ぶと、#nLineには1が返り、#nColumnには2がセットされます。

JavaScriptでは、例えば以下のように呼びます。
obj = {};
nLine = getlinecount("ABCD\nXYZ",7,obj);
nColumn = obj.column;