问题标签 [rubular]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
regex - 如何让我的正则表达式获取第一个匹配项,并忽略任何后续匹配项?
我正在制作正则表达式以从药品目录中提取剂量说明。我从许多不同的品牌中获取信息,即使在一个品牌内,格式也不一致,所以我的表达必须是宽容的。正则表达式是在 Ruby 中实现的(但不是由我实现的)。
我的正则表达式如下:
正确工作的代码示例如下:
"建议使用:作为膳食补充剂,每日 1-3 粒,分次服用,饭前服用。 "
- 我得到dose_amount= 1-3,dose_format= 胶囊,dose_frequency= 每天一次,和dose_permutation= "分剂量,饭前"。
但是,我遇到了以下描述的问题:
"使用说明:对于成人,每天服用一 (1) 片,最好随餐服用或遵照您的医疗保健专业人员的建议。吞咽前让片剂在舌头上溶解。提醒一下,请根据您的健康状况讨论您服用的补充剂和药物护理人员。 ”
问题是在描述中多次使用“take”这个词。我会得到dose_amount= with,和dose_format= your。(它匹配第二个'take',而不是第一个。)
有没有办法强制正则表达式只匹配描述中的第一个“take”?我已经尝试过将其设为贪婪与非贪婪,如此处所述,但我无法让它发挥作用。
谢谢你。
ruby - 寻找一种方法来匹配任何以特定 tld 结尾的域电子邮件
regex 和 ruby 的新手正在寻找一种方法来匹配任何以特定 tld 结尾的域
我有以下电子邮件:
我正在尝试编写一个正则表达式,它将匹配任何具有顶级域 .mil 和 .gov 的电子邮件,但不匹配其余的。我尝试了以下方法:
但我不知道如何让它匹配之前的一切.mil
我正在使用红宝石。这是我在 rubular 中尝试的内容: http: //rubular.com/r/BP7tqgAntY
ruby - DSL 的正则表达式
我正在尝试编写一个捕获两组的正则表达式:第一个是一组 n 个单词(其中 n>= 0 并且它是变量),第二个是一组具有这种格式的对field:value
。在这两个组中,个人由空格分隔。最终,一个可选的空格将两个组分开(除非其中一个是空白/无)。
请考虑以下示例:
我尝试了很多组合和模式,但我无法让它发挥作用。我最接近的模式是/([[\w]*\s?]*)([\w+:[\w]+\s?]*)/
,但在之前公开的第二种和第三种情况下它不能正常工作。
谢谢!
ruby - 正则表达式匹配双引号内的特殊字符
我的输入字符串是:
在Ruby语言中使用gsub方法,有没有办法用字符'$'替换出现在双引号中的字符'&',如果gsub方法不能解决这个问题,有没有其他方法可以用来解决这个问题.
由于 gsub 方法中的第一个参数可以是一个正则表达式,所以匹配的正则表达式将被第二个参数替换,获得一个正确的正则表达式来识别也可能解决这个问题,因为它可以在 gsub 方法中替换为 '&' 与 '$ '。
预期输出如图所示:
ruby - 部分查找单词的正则表达式问题
我有一个正则表达式适用于某些单词但不是全部:
似乎没有被捕获的字符串如下:
我的正则表达式不适用于上述字符串,我认为这不是因为使用了不恰当的词。这是我尝试过的 rubular 永久链接:http ://rubular.com/r/WOr7xYPePs 它具有其余重要的示例字符串。
ruby - 正则表达式提取不同 URL 的最后一个数字部分
我正在创建一个 URL 解析器并拥有三种 URL,我想从中提取 URL 末尾的数字部分并将提取的数字增加 10 并更新 URL。我正在尝试使用正则表达式进行提取,但我是正则表达式的新手并且遇到了麻烦。
这是三个 URL 结构,我想增加其中的最后一个数字部分:
将最后一个数字 20 增加 10:
/li>将最后一个数字 50 增加 10:
/li>将最后一个数字 30 增加 10:
/li>
ruby - 删除括号内的文本和尾随空格
我为此使用Rubular。我有以下字符串:
我正在尝试使用以下内容从字符串中删除所有括号:
问题是这并没有抢占空间,所以结果如下:
“嗨,世界。嗨,世界。嗨,世界。嗨,世界。嗨,世界。嗨,世界。嗨,世界。嗨,世界。嗨,世界,嗨,世界。”
请注意句号之前的不需要的空格。如何更新正则表达式以删除删除括号时留下的额外空间?
ruby-on-rails - Rails 正则表达式匹配组覆盖自身
我正在尝试匹配这个字符串:
NFPA 101 19.7.2.2
我正在使用这个正则表达式:
这似乎与字符串匹配,但捕获的组不是我想要的。我预计:
- NFPA
- 101
- 19
- 7
- 2
- 2
我得到的是:
- NFPA
- 101
- 2
请参阅此 rubular 示例: http ://rubular.com/r/43VY0yyNa7
就好像最后一个重复捕获组被最后一场比赛所覆盖。有没有办法让所有这些作为我需要的捕获组返回?
添加了另一个正则表达式,它给了我上面描述的类似问题: (NFPA) (.+) (.+?.)+(.+)