草庐IT

Javascript 条件正则表达式 if-then-else

全部标签

用于捕获正则表达式匹配项的 Ruby 单行代码

在Perl中,我使用以下一行语句通过正则表达式从字符串中提取匹配项并分配它们。这个找到一个匹配项并将其分配给一个字符串:my$string="thequickbrownfoxjumpsoverthelazydog.";my$extractString=($string=~m{fox(.*?)dog})[0];结果:$extractString=='jumpsoverthelazy'这个从多个匹配项创建一个数组:my$string="thequickbrownfoxjumpsoverthelazydog.";my@extractArray=$string=~m{the(.*?)fox.*

ruby-on-rails - rails partials 中的条件格式

我正在渲染一个rails部分,我想在渲染部分时改变背景颜色。我知道这不是很清楚,所以这是我想做的一个例子:第一行灰色背景第二行黄色背景行三灰色背景排四黄色背景抱歉stackoverflow接缝阻止显示背景颜色,但我认为这使我的想法清晰这是我正在使用的View代码'row':collection=>@rows%>_row.html.erb部分看起来像这样问题是我不知道如何更改每隔一行的背景颜色。有办法做到这一点吗? 最佳答案 您可以使用循环助手。像这样:">或者在您的情况下改用bgcolor,尽管我建议使用css类。您可以循环使用两个

ruby - 如何使用正则表达式从字符串中提取子字符串?

我是Ruby中正则表达式的新手。该字符串看起来像http://www.site.com/media/pool/product_color_purple.jpg我正试图从中提取其中有颜色的部分。这可以是可变长度,因为一些颜色类似于prince_purple.jpg。所以我有:colour=c.attr('src').match(/(.*)color_(.*).jpg/)puts"Colouris#{colour}"颜色返回的是字符串,而不是提取的位,即颜色。这里出了什么问题? 最佳答案 str="http://www.site.com

ruby - 用 Ruby 正则表达式中的值替换所有匹配项

我在进行Ruby字符串替换时遇到了问题。我正在为我正在使用的有限语言编写一个预处理器,它本身不支持数组,所以我自己动手。我有一条线:x[0]=x[1]&x[1]=x[2]我想用重新格式化的版本替换每个实例:x__0=x__1&x__1=x__2该行可能在别处包含方括号。我有一个匹配数组用途的正则表达式:array_usage=/(\w+)\[(\d+)\]/但我想不出Ruby构造来逐个替换每个实例。我不能使用.gsub()因为它会匹配行中的每个实例,并将每个数组声明替换为第一个声明。.scan()提示说,如果您尝试在block内使用带有.sub()!的扫描,则字符串正在被修改。如有任何

ruby-on-rails - 用于验证仅包含字符(非特殊字符)、空格和数字的字符串的正则表达式

我正在使用RubyonRails3.0.9,我想验证一个只能包含字符(不是特殊字符-不区分大小写)、空格和数字的字符串。在我的验证码中我有:validates:name,:presence=>true,:format=>{:with=>regex}#HereIshouldsetthe'regex'我应该如何声明正则表达式? 最佳答案 有几种方法可以做到这一点。如果你只想允许ASCII单词字符(没有像Ê这样的重音字符或来自其他字母表的字母,如Ӕ或ל),使用这个:/^[a-zA-Z\d\s]*$/如果您只想为Ruby1.8.7允许来自其

ruby-on-rails - 如何验证 Rails Controller 中的存在和正则表达式格式?

我正在尝试验证电子邮件地址..它是否存在..以及它是否符合正则表达式标准(/xyz/)。我真的需要在rails的Controller或View级别上执行此操作,因为我打算为我的应用程序转储ActiveRecord,因为我计划稍后使用nosql数据库。有什么提示吗?有什么建议吗?在模型中,它将是以下代码..但我试图在Controller或View中执行此操作:VALID_EMAIL_REGEX=/\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/ivalidates:email,presence:true,format:{with:VALID_EMAIL_REGEX},

ruby-on-rails - 如何将 Ruby 变量放入正则表达式代码中

我正在运行grep方法以通过模式匹配进行过滤。这是示例代码。companies.grep/city/但是,ruby不允许我在railsView内的block中输入area_code。相反,我不得不像这样对其进行硬编码:companies.grep/miami/请记住,城市是一个变量。例如,city=miami但是,它会更新。你知道如何通过grep方法传递变量吗?此外,我尝试了companies.grep/#{city}/,但没有成功 最佳答案 companies.grep/#{city}/#orcompanies.grepRegex

ruby - 使用正则表达式在 Ruby 中查找精确的模式匹配

我将如何使用正则表达式测试精确匹配。"car".match(/[ca]+/)返回true。由于正则表达式模式不包含“r”,我如何让上述语句返回false?任何包含除“c”和“a”以外的任何字符的字符串都应返回false。“acacaccc”应该返回真“acacacxcc”应该返回false 最佳答案 为其添加一些anchor:/^[ca]+$/ 关于ruby-使用正则表达式在Ruby中查找精确的模式匹配,我们在StackOverflow上找到一个类似的问题:

ruby - 如何在 ruby​​ 中的字符串中包含条件

我想在字符串中放置一个变量,但也有一个变量条件类似于:x="best""Thisisthe#{if!y.nil?yelsex}question"在字符串之外我可以做y||x。我在字符串中做什么? 最佳答案 "Thisisthe#{y.nil??x:y}question"或"Thisisthe#{y?y:x}question"或"Thisisthe#{y||x}question"你可以在插值内部像在外部一样使用y||x 关于ruby-如何在ruby​​中的字符串中包含条件,我们在Stack

ruby-on-rails - 有条件地链接范围的最佳方法

我正在尝试扩展服务器端数据表的功能。我将一些额外的过滤器传递到我的Controller/数据表,我用它来过滤结果。目前在我的模型中,我在应用我的范围之前测试参数是否存在,但我不相信这是最好的方法,因为当我的过滤器列表增长时,我会有很多if/else场景。我怎样才能以“rails方式”做到这一点?ifparams[:store_id].present?&¶ms[:status].present?Order.store(params[:store_id]).status(params[:status])elsifparams[:store_id].present?&&!params