aardio 文档

preg 库模块帮助文档

全局对象 成员列表

preg

Perl兼容正则表达式支持库

preg("\w+","uis")

创建正则表达式对象,参数一指定正则,
参数2指定修正符:
"i" 忽略大小写,
"u" 是否启用UTF8文本匹配并按字符计数 - 使正则表达式可支持中文,
"s"表示圆点可以匹配换行

也可以在参数一中同时指定正则与修正符,例如"/正则/修正符",
正则语法错误创建对象失败时返回:null,错误信息,错误代码,错误位置

preg()

返回对象:pRegexObject

pRegexObject 成员列表

pRegexObject.exec(匹配字符串,起始位置,选项)

匹配字符串,失败返回null空值,
成功返回值1为字符串数组,第一个元素为匹配结果,后面是其他捕获分组
返回值2返回对应的匹配位置数组,
起始位置默认按字节计数,UTF8文本匹配时按字符计数

pRegexObject.find(匹配字符串,起始位置,选项)

返回匹配字符串起始位置,结束位置,
匹配失败返回空,
起始位置默认按字节计数,UTF8文本匹配时按字符计数,
参数2,3为可选参数

pRegexObject.free()

释放正则对象,正则对象将释放不能再使用,
对象自动回收时将会自动调用该函数,因此并非必须调用此函数

pRegexObject.gmatch

for m,m2,m3 in pRegexObject.gmatch( /*参数(匹配字符串,起始位置,选项)  
参数2,3可选*/) {   

}

pRegexObject.grep(匹配数组,选项)

返回数组的值匹配正则的新数组,
参数2可选

pRegexObject.match(匹配字符串,起始位置,选项)

匹配字符串并使用多个返回值返回所有捕获分组,
如果无分组则返回匹配字符串

pRegexObject.namedStringNumber("捕获组名字")

返回命名捕获组在匹配分组中的索引

pRegexObject.replace(匹配字符串,替换字符串,起始位置,替换次数,选项)

除参数1,2以外其他参数可选,
替换次数默认为-1,即不限替换次数,
参数2也可以是回调函数对象,或者替换表对象,用法同string.replace,
起始位置默认按字节计数,UTF8文本匹配时按字符计数

pRegexObject.split(拆分字符串,起始位置,选项)

使用正则表达式指定分隔符拆分字符串并返回数组,
起始位置默认按字节计数,UTF8文本匹配时按字符计数,
参数2,3为可选参数

pRegexObject.test(匹配字符串,起始位置,选项)

测试正则是否匹配,返回布尔值,
起始位置默认按字节计数,UTF8文本匹配时按字符计数,
参数2,3为可选参数

pRegexObject.utf8

是否启用UTF8文本匹配并按字符计数,
如果在正则修正符中指定了"u",在该属性自动设置为true

自动完成常量

_PCRE_ANCHORED=0x10
_PCRE_AUTO_CALLOUT=0x4000
_PCRE_BSR_ANYCRLF=0x800000
_PCRE_BSR_UNICODE=0x1000000
_PCRE_CASELESS=1
_PCRE_CONFIG_BSR=8
_PCRE_CONFIG_LINK_SIZE=2
_PCRE_CONFIG_MATCH_LIMIT=4
_PCRE_CONFIG_MATCH_LIMIT_RECURSION=7
_PCRE_CONFIG_NEWLINE=1
_PCRE_CONFIG_POSIX_MALLOC_THRESHOLD=3
_PCRE_CONFIG_STACKRECURSE=5
_PCRE_CONFIG_UNICODE_PROPERTIES=6
_PCRE_CONFIG_UTF8=0
_PCRE_DFA_RESTART=0x20000
_PCRE_DFA_SHORTEST=0x10000
_PCRE_DOLLAR_ENDONLY=0x20
_PCRE_DOTALL=4
_PCRE_DUPNAMES=0x80000
_PCRE_ERROR_BADCOUNT=-15
_PCRE_ERROR_BADMAGIC=-4
_PCRE_ERROR_BADNEWLINE=-23
_PCRE_ERROR_BADOPTION=-3
_PCRE_ERROR_BADPARTIAL=-13
_PCRE_ERROR_BADUTF8=-10
_PCRE_ERROR_BADUTF8_OFFSET=-11
_PCRE_ERROR_CALLOUT=-9
_PCRE_ERROR_DFA_RECURSE=-20
_PCRE_ERROR_DFA_UCOND=-17
_PCRE_ERROR_DFA_UITEM=-16
_PCRE_ERROR_DFA_UMLIMIT=-18
_PCRE_ERROR_DFA_WSSIZE=-19
_PCRE_ERROR_INTERNAL=-14
_PCRE_ERROR_MATCHLIMIT=-8
_PCRE_ERROR_NOMATCH=-1
_PCRE_ERROR_NOMEMORY=-6
_PCRE_ERROR_NOSUBSTRING=-7
_PCRE_ERROR_NULL=-2
_PCRE_ERROR_NULLWSLIMIT=-22
_PCRE_ERROR_PARTIAL=-12
_PCRE_ERROR_RECURSIONLIMIT=-21
_PCRE_ERROR_UNKNOWN_NODE=-5
_PCRE_ERROR_UNKNOWN_OPCODE=-5
_PCRE_EXTENDED=8
_PCRE_EXTRA=0x40
_PCRE_EXTRA_CALLOUT_DATA=4
_PCRE_EXTRA_MATCH_LIMIT=2
_PCRE_EXTRA_MATCH_LIMIT_RECURSION=0x10
_PCRE_EXTRA_STUDY_DATA=1
_PCRE_EXTRA_TABLES=8
_PCRE_FIRSTLINE=0x40000
_PCRE_INFO_BACKREFMAX=3
_PCRE_INFO_CAPTURECOUNT=2
_PCRE_INFO_DEFAULT_TABLES=0xB
_PCRE_INFO_FIRSTBYTE=4
_PCRE_INFO_FIRSTCHAR=4
_PCRE_INFO_FIRSTTABLE=5
_PCRE_INFO_HASCRORLF=0xE
_PCRE_INFO_JCHANGED=0xD
_PCRE_INFO_LASTLITERAL=6
_PCRE_INFO_NAMECOUNT=8
_PCRE_INFO_NAMEENTRYSIZE=7
_PCRE_INFO_NAMETABLE=9
_PCRE_INFO_OKPARTIAL=0xC
_PCRE_INFO_OPTIONS=0
_PCRE_INFO_SIZE=1
_PCRE_INFO_STUDYSIZE=0xA
_PCRE_JAVASCRIPT_COMPAT=0x2000000
_PCRE_MULTILINE=2
_PCRE_NEWLINE_ANY=0x400000
_PCRE_NEWLINE_ANYCRLF=0x500000
_PCRE_NEWLINE_CR=0x100000
_PCRE_NEWLINE_CRLF=0x300000
_PCRE_NEWLINE_LF=0x200000
_PCRE_NOTBOL=0x80
_PCRE_NOTEMPTY=0x400
_PCRE_NOTEOL=0x100
_PCRE_NO_AUTO_CAPTURE=0x1000
_PCRE_NO_START_OPTIMISE=0x4000000
_PCRE_NO_START_OPTIMIZE=0x4000000
_PCRE_NO_UTF8_CHECK=0x2000
_PCRE_PARTIAL=0x8000
_PCRE_UNGREEDY=0x200
_PCRE_UTF8=0x800

Markdown 格式