赞 | 68 |
VIP | 397 |
好人卡 | 580 |
积分 | 22 |
经验 | 311270 |
最后登录 | 2022-3-9 |
在线时间 | 4033 小时 |
Lv3.寻梦者 (版主) …あたしは天使なんかじゃないわ
- 梦石
- 0
- 星屑
- 2208
- 在线时间
- 4033 小时
- 注册时间
- 2010-10-4
- 帖子
- 10779
 
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 taroxd 于 2014-7-21 20:32 编辑
技术讨论区向来是脚本大触的后花园,于是我来打破这一现状,来问脚本新手问题啦~
我想要在事件-显示文字等地方实现 #{} 这种类似 ruby 内嵌表达式的功能。
而喵呜喵的版本中,至少有两个美中不足之处。
1. 当你真的需要输入#{}时无法输入
2. 表达式不能内嵌花括号{}
问题 1 很容易解决,和ruby的双引号字符串一样,可以通过 \#{} 来实现
而问题 2 就是我想请教的。如何较为简洁地实现括号配对,进行匹配的功能?
我正则表达式学艺不精,因此只尝试了最原始的循环方式。
以下是我尝试的,不美观而且难以理解的代码(发布于此)。
其中 old 是原方法的返回值,也就是要进行处理的字符串。
Taroxd::Script.process 方法是对代码做一些处理,定义在上面的链接中,与这个问题无关。
代码
用ruby写出这种代码毕竟是非常难受的事情,而且匹配成对括号的功能我以后可能还会再次用到。因此我来请教,有什么更好的解决方式没有?
而且,我的方法还有个问题,比如说 #{'}'} 就会发生错误,而正确的解释为 "}"
感谢23L的解答,现在的代码是
代码 |
评分
-
查看全部评分
|