xieeyawen 发表于 2025-4-8 11:56:24

rexMatchp和rexMatchList函数

/***********
//匹配所有的小写字母
//匹配所有的大写字母
//匹配所有的字母
//匹配所有的数字
//匹配所有的数字,句号和减号
[ \f\r\t\n] //匹配所有的白字符
^表示字符串的开头,但它还有另外一个含义。当在一组方括号里使用^是,它表示"非"或"排除"的意思,常常用来剔除某个字符。
************/
rexMatchList("" '("01a" x02 "003" aa01 "abc"))   => (x02 aa01);一个小写字母一个数字,且小写字母要在数字前
rexMatchList("*" '("01a" x02 "003" aa01 "abc" ))   => ("01a" x02 aa01 "abc");元素包含多个小写字母或多个数字或数字和字母随意排列
rexMatchList("[^a-z]" '("01a" x02 "003" aa01 "abc"))    => ("01a" x02 "003" aa01)
;[^a-z]表示字符不是小写字母,"[^a-z]"表示一个是非小写字母和一个数字,且^在前
rexMatchList("^*" '("01a" x02 "003" aa01 "abc" ))=> (x02 aa01 "abc")
;^表示字符串开头是小写字母,"^*"表示首位是小写字母,其他位是多个字母或数字
rexMatchList("^[^a-z]*" '("01a" x02 "003" aa01 "abc" "a0a1aaa")) => ("01a" "003")
;[^a-z]表示字符不是小写字母,^[^a-z]表示字符串开头是[^a-z]即非小写数字,"^[^a-z]*"表示需要非小数字母开头,其他位是包含多个非小写字母或多个数字或数字和非小写字母随意排列


/**************
    匹配单个大写或小写字母。
*   匹配一行中的零个或多个大写或小写字母。
^+$ 匹配以一个或多个大写或小写字母开头并以其结尾的字符串。这意味着,字符串中只有大写或小写字母。
**************/

rexMatchp("*[.]*" "100.001") => t;小数点前是*即多个数字,小数点后是多个数
rexMatchp("*[.]*" "100.001") => t
rexMatchp("*[.]+" ".001") => t
rexMatchp("*[.]+$" ".001") => t
rexMatchp("*[.]+" ".") => nil
rexMatchp("*[.]*" "10." => nil

;见过一个代码如下,分析一下吧
rexMatchp("^[ A-Za-z]*[ ]+*[ ]+[-?0-9.]*[ *(]+[-?0-9.]*[ ]+[-?0-9.]*[) to (]+[-?0-9.]*[ ]+[-?0-9.]*[)].$" next_line)

xieeyawen 发表于 2025-5-26 08:48:01

1
页: [1]
查看完整版本: rexMatchp和rexMatchList函数