草庐IT

safe_split

全部标签

ruby-on-rails - 给定一个字符串,判断它是否来自 .html_safe 调用?

在RubyonRails中,给定一个字符串,是否可以确定.html_safe是否存在?已经在该字符串上被调用了吗?提问的原因:我想编写一个Controller单元测试来验证html_safe没有在特定字符串上被调用,以证明当该字符串稍后被渲染到在View页面中,Rails将对字符串进行转义(避免可能的XSS漏洞)。我意识到我可以继续在我的测试中实际呈现页面,然后检查呈现的页面主体,但我想知道是否有更直接的方法来做到这一点? 最佳答案 有html_safe?:s='foo's.html_safe?#=>falses='foo'.htm

ruby-on-rails - 在任何来源中都找不到 safe_yaml-0.9.2

推送到heroku:----->Ruby/Railsappdetected----->UsingRubyversion:ruby-1.9.2----->InstallingdependenciesusingBundlerversion1.3.2Rubyversionchangedetected.Clearingbundlercache.Old:ruby1.9.2p290(2011-07-09revision32553)[x86_64-linux]New:ruby1.9.2p320(2012-04-20revision35421)[x86_64-linux]Running:bundlei

ruby - String#split 奇怪的行为

这个问题在这里已经有了答案:HowdoIavoidtrailingemptyitemsbeingremovedwhensplittingstrings?(1个回答)Emptystringsatthebeginningandendofsplit[duplicate](2个答案)关闭9年前。我观察到String上的split方法有一个奇怪的行为。"1..2".split('..')#=>['1','2']"1..2".split('..',2)#=>['1','2']"..2".split('..')#=>['','2']"..2".split('..',2)#=>['','2']一切如预

ruby - `String#split!`的一种实现方式

有时我需要这样的方法,它可以改变它自己对象的类。有String#delete!,#downcase!,#encode!,#gsub!,#strip!、#slice!等。它们都试图更改字符串,但结果类仍然是String。我想要一个方法,可以将String转换为Array。一些方法来做到这一点:irb(main):082:0>str="qwerty"=>"qwerty"irb(main):083:0>str.split!"e"=>["qw","rty"]irb(main):084:0>str=>["qw","rty"]这可能吗?也许一些很酷的日本功夫或丑陋的自行车——我希望看到任何解决方案

ruby - Jekyll `safe` 标志是什么意思?

Jekylldocumentationforcreatingcustomplugins讨论safe标志。它给出的描述是:safe-AbooleanflagthatinformsJekyllwhetherthispluginmaybesafelyexecutedinanenvironmentwherearbitrarycodeexecutionisnotallowed.我很难理解这个解释。“任意代码”到底是什么意思? 最佳答案 对于核心插件(与Jekyll捆绑在一起),safe:true基本上意味着该插件将被允许在GithubPage

ruby - 为什么 String#split ("\n") 和 Array#join (' ' ) 比 String#gsub(/\n/, ' ' ) 更快?

我必须从大量字符串中删除所有换行符。在对string.join("\n").split('')与string.gsub(/\n/,'')进行基准测试时,我发现拆分和join方法要快得多,但很难理解为什么。我不明白如何在每次遇到\n时将字符串拆分为数组元素,然后将数组加入一个新字符串可能比扫描并替换每个\n更快与''。sentence=%q[Sedutperspiciatisundeomnisistenatuserrorsitvoluptatemaccusantiumdoloremquelaudantium,totamremaperiam,eaqueipsaquaeabilloinven

arrays - Ruby String Split on "\t"丢失 "\n"

\t尝试拆分此制表符分隔的数据集:17110002126910002538910004010201-0330110581-0330110741-03301200300500(为清楚起见:)171\t1000\t21\t\n269\t1000\t25\t\n389\t1000\t40\t\n1020\t1-03\t30\t1\n1058\t1-03\t30\t1\n1074\t1-03\t30\t1\n200\t300\t\t500\na=text.split(/\n/)a.eachdo|i|u=i.split(/\t/)putsu.sizeend==>3334444\t\n组合似乎去掉

python - Ruby 中是否有等同于 yaml.safe_load 的东西?

相当high-profilesecurityvulnerabilityinRails最近阐明了在Ruby应用程序中解析用户提供的YAML的潜在危险。快速谷歌搜索显示Python'sYAMLlibrary包括一个safe_load方法,它只会反序列化“简单的Python对象,如整数或列表”,而不是任何任意类型的对象。Ruby有对应的吗?有什么方法可以在Ruby应用程序中安全地接受YAML输入而无需手写自定义解析器? 最佳答案 正在关注Jim'sadvice我继续写了safe_yaml,一个gem,它添加了YAML.safe_load方

ruby: 优化 => phrase.split(delimiter).collect {|p| p.lstrip.rstrip }

ruby:评估结果与with相同的最优化表达式是什么phrase.split(delimiter).collect{|p|p.lstrip.rstrip} 最佳答案 为清晰起见进行了优化我更喜欢以下内容:phrase.split(delimiter).collect(&:strip)但我认为您想要优化速度。我不知道为什么其他人在猜测。唯一找出更快的方法是对代码进行基准测试。确保调整基准参数-这只是一个示例。require"benchmark"#Adjustparametersbelowforyourtypicalusecase.n=

ruby - 在 Ruby 中为 .split 方法使用多个分隔符

我想通过";"、""和","分隔符在一行中将一个字符串拆分为一个数组。有没有办法不使用正则表达式来做到这一点? 最佳答案 是的。可能,但使用regex。string.split(/[;,]/) 关于ruby-在Ruby中为.split方法使用多个分隔符,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/26146558/