- UID
- 1
- 积分
- 15865
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2002-1-3
- 最后登录
- 1970-1-1
|
发表于 2002-7-4 17:15:14
|
显示全部楼层
Re: [LISP函数]:LISP编程问题之三
最初由 hqd9639 发布
[B]命令: (getenv "ACAD")
"C:\\PROGRAM FILES\\ACAD2000\\support;C:\\PROGRAM
FILES\\ACAD2000\\fonts;C:\\PROGRAM FILES\\ACAD2000\\help;C:\\PROGRAM
FILES\\ACAD2000\\express;C:\\PROGRAM FILES\\ACAD2000\\... [/B]
看看XDRX_API的字符串处理函数,所有的字符串应用应该都可以满足了。
你可以使用:
118. xdrx_str_tok
功能:将由给定分割字符串分割的字符串组成表,若是"",忽略
调用格式:(xdrx_str_tok <字符串> <分割字符串>)
返回值:字符串表
示例:(xdrx_str_tok "abc;;def;;efg" ";;")=("abc" "def" "efg")
(xdrx_str_tok "abc;;def;;efg" ";")=("abc" "def" "efg")
(xdrx_str_tok "abcddefgddzdf" "d")=("abc" "efg" "z" "f")
(xdrx_str_tok "abcddefgddzdf" "dd")=("abc" "efg" "z" "f")
(xdrx_str_tok ",1,2" ",")=("1" "2) ;前面的""忽略
(xdrx_str_tok ",1,2,,,3,")=("1" "2" "3") ;;""忽略
XDRX_API关于字符串处理的函数
103. xdrx_str_right
功能:返回字符串指定位置右边的所有字符串(类似 Basic 语言的 RIGHT$ 功能).
调用格式:(xdrx_str_right <字符串> <位置>)
说明:字符串位置从0开始
返回值:字符串
示例:a="建筑设计"
(xdrx_str_right a 4)="设计"
104. xdrx_str_left
功能:返回字符串指定位置左边的所有字符串(类似 Basic 语言的 LEFT$ 功能).
调用格式:(xdrx_str_right <字符串> <位置>)
说明:字符串位置从0开始
返回值:字符串
示例:a="建筑设计"
(xdrx_str_left a 4)="建筑"
105. xdrx_str_mid
功能:返回字符串从中间指定位置开始,指定长度的字符串(类似 Basic 语言的MID$)
调用格式:(xdrx_str_mid <字符串> <开始位置> <长度>)
说明:字符串位置从0开始
返回值:字符串
示例:a="建筑设计"
(xdrx_str_mid a 4 2)="计"
106. xdrx_str_SpanIncluding
功能:从字符串位置0开始查找,提取首次仅仅出现在匹配字符表里的连续的子字符串.
调用格式:(xdrx_str_SpanIncluding <字符串> <匹配字符串>)
返回:字符串,没发现返回""
示例:a="acgwfa"
(xdrx_str_SpanIncluding a "abc")="ac"
(xdrx_str_SpanIncluding a "acw")="ac"
(xdrx_str_SpanIncluding a "cgw")=""
说明:该函数从第一个字符(0)开始找连续的出现在匹配字符串中的字符。不能从中间开始。
107. xdrx_str_SpanExcluding
功能:从字符串位置0开始查找,提取首次仅仅出现在匹配字符表里的连续的子字符串.
Extracts a substring that contains only the characters not in a set.
调用格式:(xdrx_str_SpanExcluding <字符串> <匹配字符串>)
返回:字符串,没发现返回""
说明:使用该函数在字符串中寻找第一个匹配字符(在匹配字符串中),然后返回该位置前的所有字符串
如果没有发现,返回空字符串。
示例:a="acg;w,fa"
(xdrx_str_SpanIncluding a ";,")="acg"
(xdrx_str_SpanIncluding a ",")="acg;w"
108. xdrx_str_Reverse
功能:将字符串反向
调用格式:(xdrx_reverse <字符串>)
返回值:字符串
示例:(xdrx_reverse "abc")="cba"
109. xdrx_str_subst
功能:将字符串中的第一次找到的旧串用新串代替。识别大小写
调用格式:(xdrx_str_subst <新字符串> <旧字符串> <原字符串>)
返回值:字符串
示例:(xdrx_str_subst "abc" "aa" "baadeaa")="babcdeaa"
说明:仅仅替换一次。即使还有相同的旧串存在。
110. xdrx_str_replace
功能:将字符串中所有找到的旧字符串用新字符串代替。识别大小写
调用格式:(xdrx_str_replace <字符串> <旧字符串><新字符串>)
返回值:字符串
示例:(xdrx_str_subst "baadeaa" "aa" "abc")="babcdeabc"
111. xdrx_str_Find
功能:在给定的字符串中查找子串,识别大小写
调用格式:(xdrx_str_find <字符串> <子串>)
返回值:整数值(子串的位置),起始是0,若没找到,返回NIL
112. xdrx_str_findoneof
功能:在字符串中寻找第一在匹配字符串中的字符,并返回位置。区分大小写
调用格式:(xdrx_str_findoneof <字符串> <匹配字符串>)
返回值:若找到,返回整数值(位置,基于0),否,返回NIL.
示例:(xdrx_str_findoneof "abcde" "xd")=3 ;匹配的字符是d
113. xdrx_str_Insert
功能:在指定位置插入子字符串
调用格式:(xdrx_str_insert <字符串> <位置> <子字符串>)
返回值:字符串
114. xdrx_str_Remove
功能:删除指定位置,给定长度的子串
调用格式:(xdrx_str_remove <字符串> <起始位置> <长度>)
返回值:字符串
115. xdrx_str_TrimRight
功能:删除字符串尾部的出现的所有连续的子字符串,若不给子字符串参数,则
删除字符串尾部的空格,TAB符号,换行符号
调用格式:(xdrx_str_trimright <字符串> [子字符串])
返回值:字符串
示例:(xdrx_str_trimright "afaf!!!!" "!")="afaf"
(xdrx_str_trimright "afaf " " ")="afaf"
(xdrx_str_trimright "afaf ")="afaf" ;不带参数
(xdrx_str_trimright "afaf \r\n ")="afaf" ;不带参数
116. xdrx_str_TrimLeft
功能:删除字符串头部的所有连续出现的子字符串,若不给子字符串参数,则
删除字符串头部的空格,TAB符号,换行符号。
调用格式:(xdrx_str_trimleft <字符串> [子字符串])
返回值:字符串
示例:(xdrx_str_trimleft "\r\n建筑" "\r\n")="建筑"
(xdrx_str_trimleft "\r\n建筑")="建筑" ;不带参数
(xdrx_str_trimleft "ababdddd" "ab")="dddd"
117. xdrx_str_format
功能:将任意个数的字符串,整数,长整数,实数连接成一个字符串
调用格式:(xdrx_str_format <参数1> [参数2]...[参数n])
返回值:字符串
说明:参数N: 可以是字符串,整数,长整数,实数之一
对于实数,后面跟的整数参数若小于等于5,作为小数点后的位数。
若不给整数或大于5,则对实数求整。
示例:(xdrx_str_format "abc" 1 2.332 5)="abc125"
(xdrx_str_format 1 "abc" 2.332 2 "b")="1abc2.33b"
118. xdrx_str_tok
功能:将由给定分割字符串分割的字符串组成表,若是"",忽略
调用格式:(xdrx_str_tok <字符串> <分割字符串>)
返回值:字符串表
示例:(xdrx_str_tok "abc;;def;;efg" ";;")=("abc" "def" "efg")
(xdrx_str_tok "abc;;def;;efg" ";")=("abc" "def" "efg")
(xdrx_str_tok "abcddefgddzdf" "d")=("abc" "efg" "z" "f")
(xdrx_str_tok "abcddefgddzdf" "dd")=("abc" "efg" "z" "f")
(xdrx_str_tok ",1,2" ",")=("1" "2) ;前面的""忽略
(xdrx_str_tok ",1,2,,,3,")=("1" "2" "3") ;;""忽略
119. xdrx_str_split
功能:同116,xdrx_str_tok,不同在于对于""不忽略
示例:(xdrx_str_split ",1,2" ",")=("" "1" "2")
120. xdrx_str_join
功能:对给定的表中的每项插入给定的字符串。返回组成的字符串。
调用格式:(xdrx_str_join <字符串表> <插入串>)
返回值:字符串
示例:(xdrx_str_join '("1" "2") "/")="1/2"
(xdrx_str_join '(1 2) "/")="1/2"
说明:表中的数据类型可以是字符串,整数,实数,对于实数取整。
//build 10405
修正了函数xdrx_srchdim 不能使用DIM_FONT字体的问题。
修正了函数xdrx_begin和xdrx_end配对使用时候,以前的捕捉不能恢复的问题。
增强了函数xdrx_isinside的功能:增加了,判断点是否在一个多边形顶点表集合内,不需要给定实体。
|
|