---- Support BBS ----
[00552] 1626 byte
投稿日時: 2002年1月15日(火) 19時4分17秒
ホスト名: pl086.nas323.soka.nttpc.ne.jp(210.165.163.182)
Re: BREGEXP DLL ラッパーDLL β公開
つづき。
● hidemaru の場合。
$$str = "Yokohama 045-222-1111 Osaka 06-5555-6666 Tokyo 03-1111-9999";
$$re = "/(03|045)-(\\d{3,4})-(\\d{4})/";
call bregmatch $$str, $$re; // 最初は引数付きで呼ぶ。
##len = ##return;
while( ##len ){
insert "length == " + str(##len) + "\n";
// ##i = 0;
// while( ##i < ##len ){ insert $SUB[##i] + "\n"; ##i = ##i + 1; }
insert $SUB[0] +"\n"+ $SUB[1] +"\n"+ $SUB[2] +"\n"+ $SUB[3] +"\n";
call bregmatch; // 次は引数無しで呼ぶ。
##len = ##return;
}
endmacro;
bregmatch:
// $$1 == string, $$2 == regular expression
// ##return == length
if( loaddllfile != hidemarudir + "\\bre_wrap.dll" ){
$__DLL = loaddllfile; // もともと使っていた DLL 退避。
loaddll hidemarudir + "\\bre_wrap.dll";
if( ! result ) return 0;
}
if( $$1 != "" ){
$__STR = $$1; $__RXP = $$2;
#__POS = 0; #__LEN = strlen($__STR);
}
if( #__POS >= #__LEN ) return 0;
$$p = dllfuncstr("BRE_MATCH", $__RXP, midstr($__STR, #__POS, #__LEN));
if($$p == "") return 0;
##i = 0;
$SUB[##i] = dllfuncstr("BRE_POSTOSTR", $$p);
##i = ##i + 1;
##s = strstr($$p, ":");
##tmp = val(midstr($$p,0,##s)) + val(midstr($$p, ##s+1, strlen($$p)-##s-1));
#__POS = #__POS + ##tmp;
while( dllfunc("BRE_HASMORERESULTS") ){
$$p = dllfuncstr("BRE_GETNEXT");
$SUB[##i] = dllfuncstr("BRE_POSTOSTR", $$p);
##i = ##i + 1;
}
// #SUB = ##i; #LEN = ##i;
// if( $__DLL != "" ) loaddll $__DLL; // くどいかも。
return ##i;
● 付記。
DLL のロード/アンロードの確認をするのは面倒です。(^^;)
田楽 DLLに含まれる日を待っています。
では。
<550> BREGEXP DLL ラッパーDLL β公開 (杉浦 まさき) 01/15 02:55
└<551> Re: BREGEXP DLL ラッパーDLL β公開 (安久津) 01/15 19:02
└>552< Re: BREGEXP DLL ラッパーDLL β公開 (安久津) 01/15 19:04
└<553> Re: BREGEXP DLL ラッパーDLL β公開 (杉浦 まさき) 01/15 22:37
└<554> Re: BREGEXP DLL ラッパーDLL β公開 (安久津) 01/16 18:18
└<555> Re: BREGEXP DLL ラッパーDLL β公開 (安久津) 01/16 18:19
└<556> Re: BREGEXP DLL ラッパーDLL β公開 (杉浦 まさき) 01/16 23:01
└<557> Re: BREGEXP DLL ラッパーDLL β公開 (安久津) 01/17 02:09
└<558> Re: BREGEXP DLL ラッパーDLL β公開 (安久津) 01/17 02:10
└<559> Re: BREGEXP DLL ラッパーDLL β公開 (杉浦 まさき) 01/18 00:30
└<560> Re: BREGEXP DLL ラッパーDLL β公開 (安久津) 01/18 10:45
└<561> Re: BREGEXP DLL ラッパーDLL β公開 (杉浦 まさき) 01/19 01:32
└<562> Re: BREGEXP DLL ラッパーDLL β公開 (安久津) 01/19 17:43
---- Support BBS ----