摘要: 在ubuntu下用apache配置ext的api,按照网上的教程弄好后会出现访问权限问题ForbiddenYou don't have permission to access /docs/index.html on this server,将此问题谷歌百度,问题还是没解决,最后的原因竟然是这样:从硬盘上的其他磁盘拷贝ext文件夹到ubuntu磁盘后,其权限的其他选项的访问权限是“无”,至少将其改成“访问文件”才可以被apache访问 上面是我遇到问题的解决方案,这里顺便说下用apache配置ext的api的几个步骤:添加监听端口#cd/etc/apache2#sudo vim po. 阅读全文
posted @ 2013-07-14 09:46 Jing5022 阅读(24791) 评论(0) 推荐(0) 编辑
摘要: 正则表达式的功能有两个:检查匹配是否成功和回溯参照新建正则表达式对象的方式直接用”//“括起来/Marlon/.class #=> Regexp使用%r%r(Marlon) #=> /Marlon/“^”匹配开头,“$”匹配结尾正则表达式里加上“^”则表示匹配的字符串的开头需为“^”后面的字符正则表达式里加上“$”则表示匹配的字符串的开头需为“$”后面的字符/^ABC/ =~ "ABCMarlon" #=> 0 /ABC$/ =~ "MarlonABC" #=> 6 /^ABC$/ =~ "ABC" #=> 阅读全文
posted @ 2013-07-10 17:10 Jing5022 阅读(514) 评论(0) 推荐(0) 编辑
摘要: 创建数组(%w)%w(one two tree four five)=> ["one", "two", "three", "four", "five"] # 数组元素都是String类型创建字符串(%Q,%q)name = "Marlon"%Q(My name is #{name}) # %Q生成的字符串是用双引号包含的,里面可以识别#{} => "My name is Marlon" %q(My name is #{name}) # %q生成 阅读全文
posted @ 2013-07-08 17:30 Jing5022 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 读取键或值hash.keyshash.valueshash.to_ahash.each { |key, value| ... }hash.each_keyhash.each_valuehash.each_pair #each方法的别名查询是否存在键或值hash.key?(key)hash.has_key?(key)hash.include?(key) # 只能用于查询键,不能用于查询值hash.member?(key) # 同上hash.value?(value)hash.has_value?(value)删除键或值hash.delete(key)hash.delete(key) ... 阅读全文
posted @ 2013-07-08 11:05 Jing5022 阅读(1304) 评论(0) 推荐(0) 编辑
摘要: 分隔字符串str.split # 将字符串按空格分开,多个空格连在一个会被当成一个空格str.split(" ") # 同上str.split(/ /) # 按空格分隔字符串,一个空格就是严格的空格str.split("a") #已字符串中的"a"字符进行分隔删除字符的方法str.slice!(n)str.slice!(n..m)str.slice!(n, len)str.delete(e)大小写转换的方法str.upcase! # 将小写字母改变为大写,大写的字母则保持不变str.downcase! #将大写字母改变为小写,小写的字 阅读全文
posted @ 2013-07-07 23:15 Jing5022 阅读(676) 评论(0) 推荐(0) 编辑
摘要: ary.each { |e| ... }ary.each_index { |i| ... }ary.each_with_index { |e, i| ... } # e是数组元素,i是该元素对应的下标ary.map { |e| ... }ary.collect { |e| ... }ary.inject([]) { |result, element| ... }ary1.zip(ary2, ary3) # 将数组中下标相同的元素组成一个数组,并将这些数组作为新数组的元素返回,该数组的元素个数取决与ary1的元素个数(与之相等)1 a = [ 4, 5, 6 ]2 b = [ 7, 8, 9.. 阅读全文
posted @ 2013-07-07 16:15 Jing5022 阅读(506) 评论(0) 推荐(0) 编辑
摘要: ary1.concat(ary2) 将第二个数组的所有元素作为第一个数组的新元素插入到第一个数组的最后面,返回改变后的第一个数组,具有破坏性1 ary1 = [1,2,3]2 ary2 = [3,4,5]3 arr1.concat(ary2)4 => [1, 2, 3, 3, 4, 5] ary1 + ary2 将两个数组的所有元素加起来作为一个新数组返回,其中ary1的元素排在前面,不具破坏性1 ary1 = [1,2,3]2 ary2 = [3,4,5]3 ary1 + ary24 => [1, 2, 3, 3, 4, 5]ary1 | ary2 与数组的加法相似,区别是该方法 阅读全文
posted @ 2013-07-07 09:50 Jing5022 阅读(8697) 评论(0) 推荐(0) 编辑
摘要: 插入元素的方法ary1.concat(ary2) # 将ary2的所有元素作为ary1的新元素插入到最后面,返回ary1,具有破坏性,作用的对象只能同时为数组或同时为字符串,与Js中的concat()差别较大ary.unshift(x) # 将x作为新元素插入到数组最前面ary.push(x) #将x作为新元素插入到数组最后面ary 3 } #对数组中的每个元素a进行测试,如果区块的执行结果为真,则从数组中将个元素删除,具有破坏性ary.reject! { |a| a > 3 } #同delete_ifary.reject { |a| a > ... 阅读全文
posted @ 2013-07-07 09:35 Jing5022 阅读(471) 评论(0) 推荐(0) 编辑
摘要: 整理过Js中操作数组的一些函数,却没对功能点相似的函数做过比较,说下concat()与push()这两个函数的区别。使用concat()的对象不一定是数组,也可以字符串,而使用push()的对象只能是数组返回值不同,concat()返回一个数组,push()返回调用该方法的数组的长度调用concat()的对象的值不会发生改变,而调用push()的数组会增加一个元素如果参数是数组,则调用push()的数组只增加一个元素,而使用concat()时,增加的元素的个数取决与参数这个数组的元素个数的多少 阅读全文
posted @ 2013-05-24 17:03 Jing5022 阅读(974) 评论(0) 推荐(0) 编辑
摘要: print能识别转义符不会自动换行返回值为nil1 print "Hello\nWorld"2 Hello3 World => nilputs能识别转义符会自动换行返回值为nil1 puts "Hello\nWorld"2 Hello3 World4 => nilp不能识别转义符会自动换行返回值为不为nil能识别输出的是字符串还是数字(如果是字符串,则输出结果带有双引号)输出双字节的字符(如汉字)时,输出对应二字节对应的数字,而不是字符1 p "Hello\nWorld"2 "Hello\nWorld" 阅读全文
posted @ 2013-05-10 10:32 Jing5022 阅读(341) 评论(0) 推荐(0) 编辑