草庐IT

Javascript 替换正则表达式通配符

全部标签

ruby - 如何匹配不在两个特殊字符之间的正则表达式?

我有这样一个字符串:abcab"ab"ba"a"如何匹配不是由"分隔的字符串的一部分的每个a?我想匹配此处加粗的所有内容:abcab"ab"ba"a"我想替换那些匹配项(或者更确切地说,通过用空字符串替换它们来删除它们),因此删除引用的匹配部分将不起作用,因为我希望它们保留在字符串中。我正在使用Ruby。 最佳答案 假设引号正确平衡并且没有转义引号,那么很容易:result=subject.gsub(/a(?=(?:[^"]*"[^"]*")*[^"]*\Z)/,'')当且仅当匹配的a前面有偶数个引号时,这会将所有a替换为空字符串。

ruby-on-rails - 如何在 Capybara finder 中使用正则表达式?

以下效果很好:find"img[src='https://www.example.com/image']"但是我也想找find"img[src='https://www.example.com/image?foo=bar']"如何在查找器的属性中使用正则表达式? 最佳答案 您可以使用^=检查属性是否以特定值开头:find("img[src^='https://www.example.com/image']")文章,TheSkinnyonCSSAttributeSelectors,描述了各种检查(等于、开始于、结束于等):#Equal

Ruby - 用于匹配括号的正则表达式?

我想弄清楚字符串是否正确地关闭了括号。为此,我使用了以下三个括号对。[](){}只要格式正确,括号也可以嵌套。)([]{}-Doesnothaveproperlyclosedbracketsbecause)(isreverseorder[()]-Doescontainproperlyclosedbrackets.我试过使用正则表达式,经过一番摸索,我明白了。[^\(\[]*(\(.*\))[^\)\]]*但是,这有一些问题。只匹配括号不匹配括号我不明白为什么它与括号不匹配。在我的示例中,我清楚地在括号前使用了反斜杠。输入[]-true[()]-true(nestedbracketsbu

ruby-on-rails - ruby on rails 正则表达式从文本中删除 html 标签及其内容

我想要ruby​​onrails中的正则表达式,它从给定文本中删除所有html标签及其内容。例如,如果我的文本是:-INPUT:-Hi那么它应该只显示OUTPUT应该如下:-Hi简而言之,我想要一个正则表达式或一个函数来删除以及之间的任何内容。感谢和问候,萨利尔盖克瓦德 最佳答案 'Hi'.gsub(/]+>/,'') 关于ruby-on-rails-rubyonrails正则表达式从文本中删除html标签及其内容,我们在StackOverflow上找到一个类似的问题:

ruby-on-rails - Ruby、gsub 和正则表达式

快速背景:我有一个字符串,其中包含对其他页面的引用。这些页面使用格式链接到:“#12”。哈希后跟页面ID。假设我有以下字符串:str='Thisstringlinkstothepages#12and#125'我已经知道需要链接的页面的ID:page_ids=str.scan(/#(\d*)/).flatten=>[12,125]如何遍历页面ID并将#12和#125链接到它们各自的页面?我遇到的问题是,如果我执行以下操作(在rails中):page_ids.eachdo|id|str=str.gsub(/##{id}/,link_to("##{id}",page_path(id))end

ruby 正则表达式 : ^ matches start of line even without m modifier?

ruby1.8.7。我正在使用带有^的正则表达式来匹配字符串开头的模式。问题是,如果在字符串中任何行的开头找到模式,它仍然匹配。如果我使用“m”修饰符但我没有使用,这是我期望的行为:$irbirb(main):001:0>str="hello\ngoodbye"=>"hello\ngoodbye"irb(main):002:0>putsstrhellogoodbye=>nilirb(main):004:0>str=~/^goodbye/=>6我在这里做错了什么? 最佳答案 行首:^行尾:$字符串的开头:\A字符串结尾:\z

regex - 如何在 Ruby 中以 %r<…> 分隔的正则表达式进行否定回顾?

我喜欢%r定界符,因为它使识别正则表达式的开头和结尾变得非常容易,而且我不必转义任何/.但似乎它们有一个其他分隔符所没有的不可逾越的局限性?所有其他可以想象的分隔符都可以正常工作:/(?但是当我尝试这样做时:%r它给出了这个语法错误:unterminatedregexpmeetsendoffile好吧,它可能不喜欢它不是一个平衡对,但是你如何避免它让它喜欢它呢?是否需要转义?根据wikibooks.org:Anysinglenon-alpha-numericcharactercanbeusedasthedelimiter,%[includingthese], %?orthese?, %

ruby - Mailchimp API 未替换 mc :edit content sections (using ruby library)

我在用我提供的内容替换Mailchimp中的mc:edit内容区域时遇到问题。电子邮件已发送给订阅者,但所提供的内容均未添加到电子邮件中。谁能看出我可能哪里出错了?这是我正在使用的脚本:campaign=mailchimp.campaigns.create("regular",{"list_id"=>list_id,"subject"=>"EmailTest","from_email"=>"edward@somewhere.com","from_name"=>"Edward","to_name"=>"Thetoname","template_id"=>35089},{"sections

ruby 正则表达式和分组

我有以下文字'some-text-here'并尝试获取'text'使用组从中提取单词。如果我使用那个表达式/some-(\w+)-here/一切正常,但如果我尝试对其应用分组/some-(?\w+)-here/它引发了一个错误Undefined(?...)sequence.我做错了什么?(ruby1.9.2)更新:我真丢人。这一切都是出于我的本能。是的,我已经使用RVM并且我的ruby​​版本开启了1.9.2。但我已经在http://rubular.com/测试了该表达式它写在页脚RubularrunsonRuby1.8.7.Ruby1.8.7和Ruby1.9.2有不同的正则表达式引擎

ruby - 如何在具有通配符的 RSpec 中请求(GET/POST)路由

我在Rails中有这条(公认的丑陋的)路线:scope'/software'dopost'/:software_id/:attachment_id/event/*event'=>'software#post_event',as:'post_event'end(如果不是遗留API,我会更改它)我正在为它编写一个RSpec测试。rakeroutes给我:post_eventPOST/software/:software_id/:attachment_id/event/*event(.:format)api/version1301/software#post_event我的测试是这样的:de