设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1455|回复: 3
打印 上一主题 下一主题

[已经过期] 请问怎么判断一个字符串是文字还是非文字

[复制链接]

Lv3.寻梦者 (版主)

八宝粥的基叔

梦石
0
星屑
4709
在线时间
5241 小时
注册时间
2009-4-29
帖子
14318

贵宾

跳转到指定楼层
1
发表于 2012-1-11 10:50:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
比如一个字符窜是
"伤害为A的12.5%,"
这个字符第4、6、7、8、9、10个字符都不是文字或标点符号。
我想让它是文字或标点符号时return true,不是文字或标点符号(可以是英文、数字或数学符号比如:小数点、%等)就retrun false。
现在我要分别判断字符"伤"、"A"、"5"的类型,请问这样的判断语句是怎样写的?
《逝去的回忆3:四叶草之梦》真情发布,欢迎点击图片下载试玩喵。

《逝去的回忆3》的讨论群:
一群:192885514
二群:200460747

Lv1.梦旅人

梦石
0
星屑
50
在线时间
45 小时
注册时间
2008-3-2
帖子
118
2
发表于 2012-1-11 11:02:42 | 只看该作者
这个是干什么用的呢?没弄明白~

点评

详尽帮助是指Window_Help类么?  发表于 2012-1-11 13:42
100 1 0 0  发表于 2012-1-11 13:22
"详尽帮助"脚本中所有文字都按全角显示,我希望英文和数字按半角显示,所以要加以判断。我不希望"100"显示成"1 0 0"。  发表于 2012-1-11 13:21
魔幻大航海II:伟大航路 制作中....
●剧情:■□□□□□□□□□10%
◎美工:■■■■■■■■■□90%
●音效:■■■■■■■■■□90%
◎脚本:■■■■■■■□□□70%
●枫野别墅:http://xiaomu2100.blog.163.com
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
回复

使用道具 举报

Lv3.寻梦者 (版主)

八宝粥的基叔

梦石
0
星屑
4709
在线时间
5241 小时
注册时间
2009-4-29
帖子
14318

贵宾

3
 楼主| 发表于 2012-1-12 13:52:41 | 只看该作者
自定义函数自己解决了,还是得靠自己。
  1.   #------------------------------------------------------------------------
  2.   # ● 文字数字判定
  3.   #------------------------------------------------------------------------
  4.   def words_judge(word)
  5.     case word
  6.     when "0","1","2","3","4","5","6","7","8","9","%"
  7.       return false
  8.     end
  9.     return true
  10.   end  
复制代码
调用函数:
  1.   if words_judge(text) == true
  2.     x+=1
  3.   else
  4.     x+=0.5
  5.   end
复制代码

点评

哈哈,在这里刷经验,P叔肯定不知道,诶,咋到P叔的帖了= =  发表于 2013-3-3 18:00
哈哈,在这里刷经验,P叔肯定不知道,诶,咋到P叔的帖了= =  发表于 2013-3-3 18:00
我学乖了,因为有一次我在写 if @window.visible 时不被系统认可,非要写成 if @window.visible==true才被认可了。  发表于 2012-1-12 13:58
调用函数的第一行后面的==true可以删掉。  发表于 2012-1-12 13:55
《逝去的回忆3:四叶草之梦》真情发布,欢迎点击图片下载试玩喵。

《逝去的回忆3》的讨论群:
一群:192885514
二群:200460747
回复

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
42712
在线时间
7619 小时
注册时间
2009-7-6
帖子
13506

开拓者贵宾

4
发表于 2012-1-12 14:01:57 | 只看该作者
protosssonny 发表于 2012-1-12 13:52
自定义函数自己解决了,还是得靠自己。调用函数:
  1. def judge(word)
  2.   return word[/\d+|%/] ? true : false
  3. end
复制代码
就算你那样写得话
  1. def judge(word)
  2.   return word.to_i-10<0||word=="%" ? true : false
  3. end
复制代码
另外,判断是否为真时,true可以省略
  1. x+= judge(word) ? 1 : 0.5
复制代码

点评

对不起,我刚才测试了一下"A".to_i和“我”.to_i。运行结果都是0。于是非数字.to_i会得到0的结果。所以您的word.to_i-10<0就不能判断了。  发表于 2012-1-12 14:41
符号优先级高一些  发表于 2012-1-12 14:21
还有,我的脚本里面决不出现||、&&和!=,我一定是用or、and和not的。我也不知道为什么。也许是要保持风格。  发表于 2012-1-12 14:18
看来以后我要多想到“……?……:……”。我忽略这个语法了。  发表于 2012-1-12 14:16
早说嘛。我都关闭了。昨天发的帖子一直没人回,我只好自己想办法了。  发表于 2012-1-12 14:11

评分

参与人数 2星屑 +80 收起 理由
feizhaodan + 56 凑整
怪蜀黍 + 24 糖果给您。

查看全部评分

RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-12-29 10:54

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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