乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 9|回复: 4

[编程交流] 绳子被割断了???

[复制链接]

36

主题

161

帖子

125

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
182
发表于 2022-7-5 18:53:29 | 显示全部楼层 |阅读模式
  1. ;;---------------------=={ String Wrap }==--------------------;;
  2. ;;                                                            ;;
  3. ;;  Breaks a string at spaces (if possible) into a list of    ;;
  4. ;;  substrings of a specified length or less.                 ;;
  5. ;;------------------------------------------------------------;;
  6. ;;  Author: Lee Mac, Copyright ? 2011 - www.lee-mac.com       ;;
  7. ;;------------------------------------------------------------;;
  8. ;;  Arguments:                                                ;;
  9. ;;  str - String to wrap to a specific length                 ;;
  10. ;;  len - Maximum length of each substring                    ;;
  11. ;;------------------------------------------------------------;;
  12. ;;  Returns:  List of substrings of specified length or less  ;;
  13. ;;------------------------------------------------------------;;
  14. (defun LM:StringWrap ( str len / pos )
  15.    (if (< len (strlen str))
  16.        (cons
  17.            (substr str 1
  18.                (cond
  19.                    (   (setq pos (vl-string-position 32 (substr str 1 len) nil t)))
  20.                    (   (setq pos (1- len)) len)
  21.                )
  22.            )
  23.            (LM:StringWrap (substr str (+ 2 pos)) len)
  24.        )
  25.        (list str)
  26.    )
  27. )  

 
这是李的例行公事,按长度裁剪。
 
但我需要剪掉???
 
例如
 
str:“ABcdefGhij”
 
-$(StringWrap“ABcdefGhiJ”5)
_返回:(“AB”“cd”“ef”“Gh”“iJ”)
 
-$(StringWrap“ABcdefGhiJ”4)
_返回:(“AB”“cd”“ef”“GhiJ”)
 
-$(StringWrap“ABcdefGhiJ”3)
_返回:(“ABc”“def”“GhiJ”)
 
-$(StringWrap“ABcdefGhiJ”2)
_回报:(“ABcde”“fGhiJ”)
回复

使用道具 举报

36

主题

161

帖子

125

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
182
发表于 2022-7-5 19:12:57 | 显示全部楼层
尊敬的各位
能理解吗?
回复

使用道具 举报

rlx

21

主题

1505

帖子

1551

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
81
发表于 2022-7-5 19:24:30 | 显示全部楼层
借用了李的一艘潜艇(thanx Lee)
 
 
(定义LM:sublst(lst idx len)
(条件
((null lst)nil)
(   (
((null len)lst)
(   (
)
)
(defun rlx:sublst(str nop/count l2 lst)
(if(and(>=(setq len(length(setq strlst(vl string->list str)))nop)
(setq l2(fix(/len nop))计数(fix(/len l2)))
(重复计数
(如果(>=(长度strlst)(*2 l2))
(setq lst(append lst(list(vl list->string(LM:sublst strlst 0 l2)))strlst(LM:sublst strlst l2 nil))
(setq lst(append lst(list(vl list->string(LM:sublst strlst 0 nil 1097;щщ)щ)'))
lst)
(定义c:tst()(rlx:sublst“abcdefghijklmnop”3))
 
 
我几乎可以肯定,李可以用一个更大胆的解决方案让我大吃一惊,但嘿,它确实起到了作用
 
 
gr.Rlx
回复

使用道具 举报

36

主题

161

帖子

125

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
182
发表于 2022-7-5 19:41:51 | 显示全部楼层
 
 
非常感谢。Rlx公司
好的它起作用了。
 
你为什么不喜欢这个格式代码?
195332so8puaa0u7p4o4qp.jpg
回复

使用道具 举报

rlx

21

主题

1505

帖子

1551

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
81
发表于 2022-7-5 20:01:17 | 显示全部楼层
我在visual lisp编辑器中有这样的代码,但当我将其粘贴到这里并尝试使用编辑器中的#时,它不起作用。也许这是我工作时浏览器中的安全设置,我不知道。。。
 
 
 
 
你是welkom:-)
 
 
gr.Rlx
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-12 13:58 , Processed in 0.527755 second(s), 64 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表