📄 reg_assoc.html
字号:
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=bg2312">
<META NAME="Author" CONTENT="Spock">
<META NAME="GENERATOR" CONTENT="Mozilla/4.01 [en] (Win95; I) [Netscape]">
<TITLE>MudOS v21c2 参考文件 - efuns - strings - reg_assoc</TITLE>
</HEAD>
<BODY TEXT="#CCFFFF" BGCOLOR="#000000" LINK="#33FF33" VLINK="#FF0000" ALINK="#33CCFF" BACKGROUND="../../../image/ff/fftitleback.jpg" NOSAVE>
<CENTER><FONT COLOR="#FF99FF"><FONT SIZE=+3>reg_assoc(3) MudOS v21c2 (26
Dec 1994)</FONT></FONT></CENTER>
<HR WIDTH="100%">
<BR><FONT COLOR="#FFFFCC"> 名称:</FONT>
<UL> reg_assoc() - 一个正规样式 (regular pattern) 子字符串撷取器(extractor)</UL>
<FONT COLOR="#FFFFCC"> 语法:</FONT>
<UL> mixed *reg_assoc(string str, string *pat_arr, mixed *tok_arr, void
| mixed def);
<P> 混合 *reg_assoc(字符串 str, 字符串 *pat_arr, 混合 *tok_arr, 无参数 | 混合
def);</UL>
<FONT COLOR="#FFFFCC"> 用法:</FONT>
<UL> reg_assoc 将一个字符串扩展(explode)为一些符合给定 pat_arr 正规表示(regular
expression)样式字符串的子字符串,并且和给定的剖析单元(token) tok_arr 相联结。如果
def(预设值 0)有指定的话,它则会和一个未配对者相联结。返回值是含有二个子数组的数组,第一个是一个如下格式的数组
<BR>
<UL><FONT COLOR="#FFCC99"> ({ 未配对 1, 配对 1, 未配对 2, 配对 2, ...,
未配对 n, 配对 n, 未配对 n+1 })</FONT></UL>
<P> 而第二个则含有依序对应于配对者的剖析单元:
<BR>
<UL><FONT COLOR="#FFCC99"> ({ def, 相对于配对 1 的剖析单元, ..., def, 相对于配对
n 的剖析单元, def })。</FONT></UL>
<BR> pat_arr 和 tok_arr 必须一样大小,tok_arr 的第 i 个元素是对应于 pat_arr
的第 i 个元素。pat_arr 可以只含有字符串。
<P> 如果 pat_arr(或 tok_arr)的大小是零的话,则只会返回 ({ ({ str }),
({ def }) })。</UL>
<FONT COLOR="#FFFFCC"> 例子:</FONT>
<UL>
<UL><FONT COLOR="#99FF99"> #define STRING_PAT "\"(\\\\.|[^\\\"])*\""</FONT>
<BR><FONT COLOR="#99FF99"> #define NUM_PAT "[0-9]+"</FONT><FONT COLOR="#99FF99"></FONT>
<P><FONT COLOR="#99FF99"> #define F_STRING 1</FONT>
<BR><FONT COLOR="#99FF99"> #define F_NUM 2</FONT><FONT COLOR="#99FF99"></FONT>
<P><FONT COLOR="#99FF99"> reg_assoc("Blah \"blah\" test 203 hhh j 308 \"bacdcd\b\"acb",</FONT>
<UL><FONT COLOR="#99FF99">({ STRING_PAT, NUM_PAT }), ({ F_STRING, F_NUM
}), "no-match")</FONT></UL>
</UL>
<P> 将会返回
<UL><FONT COLOR="#99FF99"> ({ ({ "Blah ", "\"blah\"", " test ", "203",
" hhh j ", "308", " ",</FONT>
<UL><FONT COLOR="#99FF99"> "\"bacdcd\b\"", "acb" }),</FONT></UL>
<FONT COLOR="#99FF99"> ({ "no-match", F_STRING, "no-match", F_NUM, "no-match",
F_NUM,</FONT>
<UL><FONT COLOR="#99FF99"> "no-match", F_STRING, "no-match" }) })</FONT></UL>
</UL>
</UL>
<FONT COLOR="#FFFFCC"> 翻译:</FONT>
<UL> Kenny@Broken.History 97.Jul.26 (printed 3/16/95)</UL>
<CENTER>
<HR WIDTH="100%"></CENTER>
<CENTER><A HREF="../strings.html">回到上一页</A></CENTER>
<CENTER>
<HR WIDTH="100%"></CENTER>
</BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -