明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: yxp

[源码] Split 函数用 lisp 实现的方法与效率[2020-7-1更新]

  [复制链接]
 楼主| 发表于 2018-4-14 08:58:04 | 显示全部楼层
pengfei2010 发表于 2018-4-14 08:28
(Split "Hello,a,2World,a,12,a,5456. 1568" "a,") => '("Hello" "2World" "12" "5456. 1568")
(Str2StrL* ...

非常感谢,不然我还一直错着呢,我研究一下。
发表于 2018-4-16 10:14:24 | 显示全部楼层
vectra 发表于 2018-4-13 20:13
借楼主的话题 顺便测试了一下我自己写的split代码 ,发现还是list操作的效率最高

返回错误
(p-string-tokenize "Hello,a,2World,a,12,a,5456. 1568" "a,")
-》("Hello" "2World" "12" "5456. 1568")

点评

yxp
已修正  发表于 2020-7-1 04:53
发表于 2018-4-16 11:39:14 | 显示全部楼层
fl202 发表于 2018-4-16 10:14
返回错误
(p-string-tokenize "Hello,a,2World,a,12,a,5456. 1568" "a,")
-》("Hello" "2World" "12"  ...

请用 p-string-tokenize-m
发表于 2018-4-16 12:24:27 | 显示全部楼层
学习了,谢谢各位大神!!
发表于 2018-4-17 09:06:24 | 显示全部楼层
本帖最后由 fl202 于 2018-4-19 11:22 编辑
vectra 发表于 2018-4-16 11:39
请用 p-string-tokenize-m

一样的,对于多字符,返回错误的。或者应该注释说明:本程序只能用于单字符。

本贴其它程序也是一样,应该先确保返回正确,再谈效率。
发表于 2018-4-17 09:29:51 | 显示全部楼层
fl202 发表于 2018-4-17 09:06
一样的,对于多字符,返回错误的。

本贴其它程序也是一样,应该先确保返回正确,再谈效率。

程序设计不一样而已 -m本身就不支持多字符做为分隔符 而是把多个字符的每一个字符都作为分隔符 结果当然是不一样的啦。。
发表于 2018-4-18 16:11:40 | 显示全部楼层
(Split "jksdi     kkik,oo" " ")  返回错误

点评

yxp
谢谢,已修正  发表于 2020-7-1 04:57
发表于 2019-3-26 19:42:47 | 显示全部楼层
(Split "a11b22c33d44" "1")->("a"  "b22c33d44") ;;;将多个1先替换成1个1了,不符合原味
(Split "a11b22c33d44" "1")->("a" "" "b22c33d44");;;这才是最终目的
发表于 2020-5-14 16:34:04 | 显示全部楼层
第二次学习楼主的帖子啦  写的很详细
发表于 2020-5-15 09:37:53 | 显示全部楼层
这个讨论很好,学到很多东西。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-22 21:00 , Processed in 0.189100 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表