查看: 2406|回复: 8

[已经解决] 请问如何将一段字符根据某逻辑分割并保存在数组中?

[复制链接]
梦石
0
星屑
2920
在线时间
713 小时
注册时间
2010-7-25
回帖
659

开拓者

发表于 2018-1-22 14:09:43 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
本帖最后由 jianyulei 于 2018-1-22 14:58 编辑

例如这样的一段字符串: “<1><2><3>fthdr<4><5>”
如何让所有被<>包括的字符串和符号本身全部依次保存到数组里,而不符合条件的则无视,最终数组变成: a[<1>,<2>,<3>,<4>,<5>] 这种的格式,脚本应该怎么写呢?

也或者另一种问题:
如果我有一段字符串“1,2,3,4,5”如何将他们保存为 a[1,2,3,4,5]

梦石
1
星屑
23241
在线时间
9564 小时
注册时间
2012-6-19
回帖
7018

开拓者短篇九导演组冠军

发表于 2018-1-22 15:13:44 | 显示全部楼层
前一个要靠正则表达式分析
后一个,如果你确定格式就是这样以中文逗号分割的,那:
  1. p '1,2,3'.split(',')
复制代码

点评

请问如果逗号可能不是全角,甚至可能是空格的话怎么办?  发表于 2018-1-22 15:42
d_s = "1 2 3 4 5";p d_s = d_s.split( ); 很好用,谢谢  发表于 2018-1-22 15:24

评分

参与人数 1赞 +1 收起 理由
jianyulei + 1 认可答案

查看全部评分

回复

使用道具 举报

梦石
0
星屑
34460
在线时间
5096 小时
注册时间
2012-11-19
回帖
4715

开拓者

发表于 2018-1-22 19:50:05 | 显示全部楼层
本帖最后由 芯☆淡茹水 于 2018-1-25 19:04 编辑

str = "<1><2><3>fthdr<4><5>"
new_str = str.scan(/<\d+>/)


str = "12,45。32,47"
new_str = str.scan(/\d+/)

点评

不对,汉字的话和符号是一类,一保存就全保存了,果然还是没办法  发表于 2018-1-26 09:19
啊,我知道了,用\S*  发表于 2018-1-26 09:09
请问我把这些数字改成汉字了怎么办?好像汉字没办法保留  发表于 2018-1-26 09:01
感谢,这样一来正好只保留了数字,所有不想要的符号都被删除了。  发表于 2018-1-26 08:53

评分

参与人数 1赞 +1 收起 理由
jianyulei + 1 认可答案

查看全部评分

xp vx va mv  va mz 各类型脚本/插件定制
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部