草庐IT

regexp-safe

全部标签

ruby-on-rails - Rails Edge/4 错误 `require' : cannot load such file -- thread_safe

按照此处的说明让应用程序在RailsEdge之外运行以测试Rails4:WhatisthebestwaytogenerateaRailsappusingedge?和HowtocreateEdgerailsapplication?但是遇到这个错误:`require':cannotloadsuchfile--thread_safe(LoadError)使用命令:railsnewEdge--edge--skip-bundle--database=postgresql--skip-test-unit--skip-index-html我正在检查Railsmasterbin目录。我将rbenv与r

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 - 使用 RegExp 格式化字符串以设置分隔符

我正在尝试按如下方式格式化字符串确保所有数字都使用破折号作为分隔符。示例:480.01.4430和480014430都将是480-01-4430。这就是我到目前为止想出的,但我不明白为什么它不起作用defformat_ssns(string)ssn=string[/\d{9}/]ssn.gsub(/\d{9}/,/\d{3}-\d{2}-\d{4}/)end 最佳答案 奇怪的是你没有得到异常:gsub的第二个参数必须是字符串(或可以转换为字符串的东西),而不是正则表达式。这是一个工作示例:ssn='123456789'ssn.gsu

ruby - 如何修复 : Liquid Exception: Tag '{%' was not properly terminated with regexp:/\%\}/?

我从我的Jekyll网站生成器中得到这个输出LiquidException:Tag'{%'wasnotproperlyterminatedwithregexp:/\%}/这是怎么回事? 最佳答案 事实证明,您可能在模板中犯了格式错误。例如:{%ifsite.ALERTorsite.ALERT_en%}会坏但是{%ifsite.ALERTorsite.ALERT_en%}很好。 关于ruby-如何修复:LiquidException:Tag'{%'wasnotproperlytermina

ruby - 什么时候使用 Regexp.new()?

我找不到任何合适的答案,因为Regexp代表正则表达式。这是一个例子:test=Regexp.new("Hello")它返回/Hello/,但我对它的使用感到困惑。为什么不直接使用/Hello/呢?谁能给我一个Regexp.new()函数的小例子? 最佳答案 假设您想让您的系统检测“以DOG开头并以CAT结尾的句子”。明显的正则表达式类似于/DOG.+CAT\./[1].到目前为止,有效。但现在您希望能够增强系统,以便用户可以配置开始和结束词。您可以使用//语法和插值来实现:/#{startWord}.+#{endWord}\./但

Ruby 1.9 unicode 在 Regexp 中转义

我刚刚将一个旧项目升级到Ruby1.9.3。我在使用unicode字符串时遇到了很多麻烦。归结为:p="\\username";"AnyString".match(/#{p}/)这在1.8中有效,并按预期返回nil。但是,在1.9中它会抛出:ArgumentError:invalidUnicodeescape我正在尝试匹配字符串中的'\u'。我认为这两个反斜杠会使它免于注册为unicode。我在这里错过了什么?编辑:单引号也不起作用:1.9.3p429:002>p='\\username';"AnyString".match(/#{p}/)ArgumentError:invalidUn

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

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

Ruby string.scan(/#{regexp_pattern}/) - 执行时间

问题:ruby.scan使用正则表达式模式最多需要5分钟。时间取决于正在扫描的字符串。测试在ruby​​“2.5.1”和ruby​​“2.4.2”上运行。例子:deftime_regexp_test(string)start=Time.nowputs"parsestart:#{start}"regexp_pattern="[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+[a-zA-Z0-9](?:[a-

regex - 如何使用 Regexp.union 构建不区分大小写的正则表达式

我有一个字符串列表,需要使用Regexp#union从它们构建正则表达式.我需要生成的模式不区分大小写。#union方法本身不接受选项/修饰符,因此我目前看到两个选项:strings=%w|onetwothree|Regexp.new(Regexp.union(strings).to_s,true)和/或:Regexp.union(*strings.map{|s|/#{s}/i})两种变体看起来都有点奇怪。是否可以使用Regexp.union构造不区分大小写的正则表达式? 最佳答案 简单的起点是:words=%w[onetwothr