ruby - 正则表达式在里面获取文本

标签 ruby regex gsub

我一直在尝试在句子中获取第一个位置名称。所需的位置名称将恰好从第一句的第二个大写字母开始,然后恰好在第一个点 (.) 之前结束

例子:

 It is located at Supreme Court. Follow by some other text. 
                  ^           ^

期望输出

Supreme Court

抱歉,我无法向您展示我目前获得的一段代码。经过一个小时的尝试,我一无所获。

如果您用 Ruby 显示代码示例,我们将不胜感激。

最佳答案

这个正则表达式:

regexp = /^.*?[A-Z].*?([A-Z].*?)\./
match = regexp.match(subject)
if match
    match = match[1]
else
    match = ""
end

将产生:最高法院

我从匹配第一个大写字母的字符串的开头开始,同时忽略其他所有内容。然后我匹配第二个大写并将结果保存到反向引用 1 中,直到第一个点。

关于ruby - 正则表达式在里面获取文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7761794/

相关文章:

php - url解析器的正则表达式

ruby - 正则表达式和字符串

r - gsub 并返回字符串中的正确数字

Ruby - 发送带有 header 的 GET 请求

ruby-on-rails - 如何为多态关联添加过滤器?

regex - oracle中提取括号外的数据

r - 从R中的URL中提取参数

ruby - 在 Ruby 中提取 URI 最后一段的最佳方法

ruby-on-rails - 创建周期性事件作业失败

Ruby 正则表达式\1 对 gsub 意味着什么