Project1

标题: 请问怎么判断一个字符串是文字还是非文字 [打印本页]

作者: 怪蜀黍    时间: 2012-1-11 10:50
标题: 请问怎么判断一个字符串是文字还是非文字
比如一个字符窜是
"伤害为A的12.5%,"
这个字符第4、6、7、8、9、10个字符都不是文字或标点符号。
我想让它是文字或标点符号时return true,不是文字或标点符号(可以是英文、数字或数学符号比如:小数点、%等)就retrun false。
现在我要分别判断字符"伤"、"A"、"5"的类型,请问这样的判断语句是怎样写的?
dsu_plus_rewardpost_czw
作者: woodytt    时间: 2012-1-11 11:02
这个是干什么用的呢?没弄明白~
作者: 怪蜀黍    时间: 2012-1-12 13:52
自定义函数自己解决了,还是得靠自己。
  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
复制代码

作者: fux2    时间: 2012-1-12 14:01
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
复制代码





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1