在第一个匹配处停止的正则表达式

2024-01-30

我的正则表达式模式看起来像

<xxxx location="file path/level1/level2" xxxx some="xxx">

我只对分配给位置的引号中的部分感兴趣。如果没有贪婪开关,它不应该像下面一样简单吗?

/.*location="(.*)".*/

似乎不起作用。


您需要使正则表达式变得懒惰/非贪婪,因为默认情况下,"(.*)"将匹配所有"file path/level1/level2" xxx some="xxx".

相反,您可以使点星变得非贪婪,这将使其匹配尽可能少的字符:

/location="(.*?)"/

添加一个?在量词 (?, * or +) 使其变得非贪婪。

注意:这仅适用于实现 Perl 5 扩展(Java、Ruby、Python 等)的正则表达式引擎,但不适用于“传统”正则表达式引擎(包括 Awk、sed, grep没有-P, etc.).

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在第一个匹配处停止的正则表达式 的相关文章

  • 文件名的正则表达式模式

    如果文件名符合以下条件 用户可以将文件放入服务器 它必须以 abc 开头 然后是一个点和一个数字 Valid file names abc 2344 abc 111 Invalid abcd 11 abc ab12 正则表达式是什么 我不能
  • 正则表达式 '?' 的类似物(前一项可选)在T-SQL中像什么?

    我想知道 是否可以翻译包含 的正则表达式 前面的项目可选 在 T SQL LIKE 模式中 DB 端无需任何操作 例如 31 4 我可以将其分成几个子句 但如果正则表达式包含很多 这不太方便 LIKE不使用正则表达式 并且它使用的模式语言没
  • REgex从oracle中的字符串中获取数字

    我有以下格式的字符串 阿克拉姆 88 jamesstree 20140418 阿克兰 8 约翰街 20140418 阿克兰 888 johnstreet 20140418 现在我只想检索 88 8 和 888 值 我为此编写了以下查询 SU
  • 没有特殊字符的密码验证器

    我是 RegEx 的新手 已经进行了大量搜索 但没有找到任何具体内容 我正在编写一个验证密码字符串的正则表达式 可接受的字符串必须至少具有 4 种字符类型中的 3 种 数字 小写字母 大写字母 特殊字符 我对包含有一个想法 也就是说 如果这
  • 如何仅删除单括号并保留配对的括号

    你好 我亲爱的老师 R 用户朋友们 我最近开始认真学习正则表达式 最近我遇到了一种情况 我们只想保留配对括号 并省略未配对的 这是我的样本数据 structure list t1 c Book Pg 1 Website Online Jou
  • .htaccess 如果 URL 错误,请执行某些操作

    我正在做我的个人CMS http en wikipedia org wiki Content management system 我想在其中使用很酷 友好 的 URL 这是我的 htaccess 文件代码 RewriteEngine on
  • 为什么我只得到第一个捕获组?

    https stackoverflow com a 2304626 6607497 https stackoverflow com a 2304626 6607497 and https stackoverflow com a 370042
  • Vim 搜索模式,如果出现则删除到行尾

    我正在尝试在文本文件中搜索特定模式 如果出现这种模式 则意味着该行的其余部分不需要 因此可以删除 我尝试过使用以下命令 但到目前为止还没有成功 s pattern d g pattern d 如果有人有任何建议 他们将不胜感激 would
  • 用于多行字符串的 ECMAScript 正则表达式

    我正在为我的应用程序编写加载过程 它涉及从文件中读取数据并创建具有适当属性的适当对象 该文件由以下格式的连续条目 以换行符分隔 组成 OBJECT TYPE
  • 删除emacs中多余的空行

    M x flush lines 删除缓冲区中的所有空白行 但是我只想删除多余的空白行 也就是说 如果有n个连续的空白行我想删除n 1并保留一个 我知道删除空白行可以完成该点下的空白行的工作 但是我想要一个适用于整个缓冲区的简单解决方案 有什
  • 用于验证 ip 列表中的 ip 范围的正则表达式

    我有正则表达式用于验证 50 个 ips 逗号分隔的列表 25 0 5 2 0 4 0 9 01 0 9 0 9 3 25 0 5 2 0 4 0 9 01 0 9 0 9 1 50 列表示例 10 10 10 1 127 0 0 1 现在
  • 正则表达式 - 将 target="blank" 添加到我的内容中的所有 标记链接

    有人可以帮我在 C net 中创建一个正则表达式来添加target blank to all a 在我的内容中标记链接 如果链接已经设置了目标 则将其替换为 blank 目的是在新窗口中打开我的内容中的所有链接 感谢你的帮助 dotnet岩
  • 如何在Python字符串中替换括号及其中的文本

    我有两个这样的字符串 string1 Today I went to the market to pick up some fruit string2 Today I went to school to learn algebra and
  • 正则表达式中的“g”标志是什么意思?

    的含义是什么g正则表达式中的标志 之间有什么区别 g and g用于全局搜索 这意味着它将匹配所有出现的情况 通常你还会看到i这意味着忽略大小写 参考 全局 JavaScript MDN https developer mozilla or
  • Laravel 验证规则仅针对字母

    我正在尝试添加验证规则以仅接受信件 我正在使用regex规则 但它仍然不起作用 下面是我的代码 Validate request input this gt validate request name gt required regex p
  •  
    标记内删除

    我制作了简单的 BBCode 脚本 一切正常 但后来我使用了一个 javascript 库来美化我的代码 pre pre 现在我面临的唯一问题是 br 每行代码后面的标签 pre pre tags 所以问题是我怎样才能删除 br 标记哪些在
  • 正则表达式以任何顺序匹配查询中的所有单词

    我正在尝试为一个项目构建一个搜索功能 该功能根据用户搜索输入以及它是否与针对项目列出的关键字匹配来缩小项目范围 为此 我将项目关键字保存在data属性并使用 RegExp 模式将查询与这些关键字进行匹配 我目前正在使用这个表达式 我知道它不
  • 如何使用正则表达式验证带有可选百分比符号的小数?

    正如问题的标题 我需要使用以下值验证正则表达式 最多 2 个小数位和 9 个整数 带有可选的百分比符号 Valid 10 0 1111111 12 15 2 10 2 3 Invalid 12 02 123456789123 123 I t
  • 在 Python 中解析 TCL 列表

    我需要在双括号上拆分以空格分隔的 TCL 列表 例如 OUTPUT 172 25 50 10 01 01 Ethernet 172 25 50 10 01 02 Ethernet Traffic Item 1 172 25 50 10 01
  • 与有效正则表达式匹配的正则表达式

    是否存在与有效正则表达式匹配的正则表达式 我知道正则表达式有多种风格 其中一种就可以了 是否存在与有效正则表达式匹配的正则表达式 根据定义 它非常简单 No 所有正则表达式的语言是no regular语言 只需查看嵌套括号 因此不可能有re

随机推荐

  • Boost.Spirit:解析期间设置子语法

    为了处理大量的编译时间和语法的重用 我将语法组成了几个按顺序调用的子语法 其中之一 称为 SETUP 语法 提供了解析器的一些配置 通过符号解析器 因此后面的子语法在逻辑上依赖于该语法 再次通过不同的符号解析器 因此 在解析SETUP之后
  • 控制台应用程序 - DbContext 实例不能在 OnConfiguring 内部使用

    我正在使用 Asp Net Core 控制台应用程序 Entity Framework Core 和工作单元存储库模式 当我使用多线程函数时 出现以下错误 DbContext 实例不能在 OnConfiguring 内部使用 因为此时它仍在
  • 通过作业运行 SP 时响应数据截断

    Subject 我每个月都会创建一份报告 报告的创建包括 2 个步骤 从我们的服务获取 XML 并将其存储在数据库中 解析 XML 并创建文件 在过去的几个月里 我以手动模式创建了报告 现在我想自动化这些东西 但这里来了一个 Problem
  • Linq to objects - 选择第一个对象

    我对linq几乎一无所知 我正在这样做 var apps from app in Process GetProcesses where app ProcessName Contains MyAppName app MainWindowHan
  • 如何将 Scala Spark Dataset.show 重定向到 log4j 记录器

    Spark API 文档展示了如何从发送到 stdout 的数据集或数据帧中获取漂亮的打印片段 可以将此输出定向到 log4j 记录器吗 或者 有人可以分享将创建类似于 df show 格式的输出的代码吗 有没有办法做到这一点 允许 std
  • 如何为每个 git 存储库管理一个唯一的密钥?

    我在两种情况下使用git 我用一些Github存储库 我目前正在使用 OpenShift 它使用ssh and git用于部署 首先 我用了ssh keygen用于生成在 OpenShift 站点更新的密钥 这样的密钥存储在 ssh 并创造
  • 如何从类库中的头项目的 app.config/appsettings.json 获取连接字符串

    在编写访问数据库的 C 类库时 我从头项目的 app config appsettings json 获取连接字符串的首选方法是让数据库访问类依赖于某些IConnectionString由 head 项目在 IOC 容器中注册的接口 然而
  • Gatsby 与 PostCSS 8 - 尝试导入错误:“component.module.css”不包含默认导出(作为“样式”导入)

    我有一个基于入门项目的 Gatsby and Sanity 网站 到目前为止 一切都很顺利 但我今天在 package json 文件中更新了所有软件包和插件 以消除所有 npm 警告 这包括更新到 Gatsby 3 0 3 和 PostC
  • 获取给定 AnyObject 的唯一字符串?

    在 Objective C 中 这很简单 NSString stringWithFormat p objRef 我怎样才能在斯威夫特做到这一点 func hashString obj AnyObject gt String return S
  • 用于确定 n 是否完全平方的 O(log log n) 算法

    是否有已发布的 O log b 算法来确定 b 位数字是否为整数的平方 如果这个问题超出了本网站的范围 我深表歉意 如果是的话 我很乐意检索它 更新 我意识到我提出的问题是不合理的 因此 让我通过询问 b 中的次多项式运算的任何算法来修改它
  • 如何在 Material-UI 中插入新行?

    我正在开发一个联系人应用程序 其中所有数据都临时存储在客户端 我使用了 Material ui 表来显示联系人 当单击右下角的 添加新联系人 按钮时 它会显示一个带有表单的对话框 单击 保存 按钮时 数据将保存在该状态中 但我面临的问题是如
  • primeng 下拉组件错误(“p-dropdown”不是已知元素)

    遵循指南 https www primefaces org primeng https www primefaces org primeng 我尝试按照上面详述的步骤安装 PrimeNG 以与 Angular4 一起使用 但出现错误 p d
  • Jquery + Rails 有问题,是真的吗?

    我在上一个问题中看到评论说最好将 Prototype 与 Rails 一起使用 然而 我自己的经验是 Jquery 是一个优秀的 Javascript 库 作为 Rails 的新手 我还没有研究如何将 Jquery 与 Rails 一起使用
  • 在新订单电子邮件通知中显示客户 IP 地址

    创建新订单时 woocommerce 将向管理员发送一封电子邮件 我希望它也在电子邮件中发送客户的 IP 地址 但我无法让它工作 这是我到目前为止得到的 这段代码进入mytheme woocommerce emails admin new
  • Installshield主要升级不会卸载旧版本

    我有一个 Installshield 项目 我添加了一个主要的升级项目并进行了更改Product version Product code and Package code 使用新安装程序安装后 旧版本仍然存在 在Add Remove 我认
  • Python Dataframes 未合并索引

    我正在尝试合并 2 个数据帧 但由于某种原因它抛出KeyError Player Id 我正在尝试合并Striker Id and Player Id 这就是我的数据框的样子 合并代码 player runs merge matches p
  • nginx 反向代理导致 POST 请求正文丢失

    我使用 nginx 作为 http 服务的反向代理 使用如下配置 location jobexecutor proxy pass http jobexecutor 8080 jobexecutor proxy set header Host
  • 使用 rspec 测试设备视图

    我已经生成了 Devise 的视图运行rails g devise views现在想测试它们 这就是我想出的 require spec helper describe devise sessions new do before do ren
  • 如何在运行时复制Python模块?

    我需要制作一个套接字模块的副本才能使用它 并再对一个套接字模块进行猴子修补并以不同的方式使用它 这可能吗 我的意思是真正复制一个模块 即得到相同的结果runtime就好像我复制了一样socketmodule c 改变了initsocket
  • 在第一个匹配处停止的正则表达式

    我的正则表达式模式看起来像