.Net 正则表达式将 $ 与字符串结尾而不是行匹配,即使启用了多行

2023-12-15

我试图突出显示降价代码,但遇到了 .NET 正则表达式多行选项的奇怪行为。

下面的表达式:^(#+).+$在任何在线正则表达式测试工具上都可以正常工作:

enter image description here

但它拒绝与 .net 一起使用:

enter image description here

它似乎没有考虑 $ 标签,只是突出显示所有内容,直到字符串末尾,无论如何。这是我的 C#

RegExpression = new Regex(@"^(#+).+$", RegexOptions.Multiline)

我缺少什么?


很明显,您的文本包含 LF 以外的换行符。在 .NET 正则表达式中,点匹配除 LF 之外的任何字符(换行符,\n).

See 多行模式MSDN 正则表达式参考

默认情况下,$仅匹配输入字符串的末尾。如果您指定正则表达式选项.多行选项,它匹配换行符 (\n) 或输入字符串的末尾。但是,它与回车/换行字符组合不匹配。要成功匹配它们,请使用子表达式\r?$而不仅仅是$.

So, use

@"^(#+).+?\r?$"

The .+?\r?$将延迟匹配除 LF 之外的任何一个或多个字符,直到换行符之前的第一个 CR(可选)。

或者只使用否定字符类:

@"^(#+)[^\r\n]+"

The [^\r\n]+将匹配除 CR/LF 之外的一个或多个字符。

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

.Net 正则表达式将 $ 与字符串结尾而不是行匹配,即使启用了多行 的相关文章

  • 如何在 Unity 中从 RenderTexture 访问原始数据

    问题的简短版本 我正在尝试访问 Unity 中 RenderTexture 的内容 我一直在使用 Graphics Blit 使用自己的材质进行绘制 Graphics Blit null renderTexture material 我的材
  • 在 Xamarin Android 中将图像从 URL 异步加载到 ImageView 中

    我有一个包含多个项目的 ListView 列表中的每个项目都应该有一个与之关联的图像 我创建了一个数组适配器来保存每个列表项并具有我希望加载的图像的 url 我正在尝试使用 Web 请求异步加载图像 并设置图像并在加载后在视图中更新它 但视
  • htaccess 301 重定向 - 删除查询字符串 (QSA)

    我一直在努力处理一些 htaccess 重定向 我只是花了一些时间在堆栈上阅读和搜索 但无法获得适合我的场景的答案 我正在将旧客户端网站的 301 重定向到新客户端 旧页面有参数查询 我想从网址中删除它 menu php idCategor
  • 如何在没有 Control.Invoke() 的情况下从后台线程修改控件属性

    最近 我们遇到了一些旧版 WinForms 应用程序 我们需要更新一些新功能 在专家测试该应用程序时 发现一些旧功能被破坏 无效的跨线程操作 现在 在您认为我是新手之前 我确实有一些 Windows 窗体应用程序的经验 我不是专家 但我认为
  • SSH 主机密钥指纹与模式 C# WinSCP 不匹配

    我尝试通过 WinSCP 使用 C 连接到 FTPS 服务器 但收到此错误 SSH 主机密钥指纹 与模式不匹配 经过大量研究 我相信这与密钥的长度有关 当使用 服务器和协议信息 下的界面进行连接时 我从 WinSCP 获得的密钥是xx xx
  • 跨多个控件共享事件处理程序

    在我用 C 编写的 Windows 窗体应用程序中 我有一堆按钮 当用户的鼠标悬停在按钮上时 我希望按钮的边框发生变化 目前我有以下多个实例 每个按钮一个副本 private void btnStopServer MouseEnter ob
  • 如何在 WPF RichTextBox 中跟踪 TextPointer?

    我正在尝试了解 WPF RichTextBox 中的 TextPointer 类 我希望能够跟踪它们 以便我可以将信息与文本中的区域相关联 我目前正在使用一个非常简单的示例来尝试弄清楚发生了什么 在 PreviewKeyDown 事件中 我
  • 如何针对 Nancy 中的 Active Directory 进行身份验证?

    这是一篇过时的文章 但是http msdn microsoft com en us library ff650308 aspx paght000026 step3 http msdn microsoft com en us library
  • c# Asp.NET MVC 使用FileStreamResult下载excel文件

    我需要构建一个方法 它将接收模型 从中构建excel 构建和接收部分完成没有问题 然后使用内存流导出 让用户下载它 不将其保存在服务器上 我是 ASP NET 和 MVC 的新手 所以我找到了指南并将其构建为教程项目 public File
  • 按字典顺序对整数数组进行排序 C++

    我想按字典顺序对一个大整数数组 例如 100 万个元素 进行排序 Example input 100 21 22 99 1 927 sorted 1 100 21 22 927 99 我用最简单的方法做到了 将所有数字转换为字符串 非常昂贵
  • A* 之间的差异 pA = 新 A;和 A* pA = 新 A();

    在 C 中 以下两个动态对象创建之间的确切区别是什么 A pA new A A pA new A 我做了一些测试 但似乎在这两种情况下 都调用了默认构造函数 并且仅调用了它 我正在寻找性能方面的任何差异 Thanks If A是 POD 类
  • 使用安全函数在 C 中将字符串添加到字符串

    我想将文件名复制到字符串并附加 cpt 但我无法使用安全函数 strcat s 来做到这一点 错误 字符串不是空终止的 我确实设置了 0 如何使用安全函数修复此问题 size strlen locatie size nieuw char m
  • 使用 LINQ 查找列表中特定类型的第一个元素

    使用 LINQ 和 C 在元素列表中查找特定类型的第一个项目的最短表示法是什么 var first yourCollection OfType
  • 我的 strlcpy 版本

    海湾合作委员会 4 4 4 c89 我的程序做了很多字符串处理 我不想使用 strncpy 因为它不会终止 我不能使用 strlcpy 因为它不可移植 只是几个问题 我怎样才能让我的函数正常运行 以确保它完全安全稳定 单元测试 这对于生产来
  • 用 C 实现 Unix shell:检查文件是否可执行

    我正在努力用 C 语言实现 Unix shell 目前正在处理相对路径的问题 特别是在输入命令时 现在 我每次都必须输入可执行文件的完整路径 而我宁愿简单地输入 ls 或 cat 我已经设法获取 PATH 环境变量 我的想法是在 字符处拆分
  • 检查 url 是否指向文件或页面

    我们需要以下内容 如果文件确实是文件 则从 URL 下载该文件 否则 如果它是一个页面 则什么也不做 举个简单的例子 我有以下命令来下载文件 My Computer Network DownloadFile http www wired c
  • 将日期参数传递给对 MVC 操作的 ajax 调用的安全方法

    我有一个 MVC 操作 它的参数之一是DateTime如果我通过 17 07 2012 它会抛出一个异常 指出参数为空但不能有空值 但如果我通过01 07 2012它被解析为Jan 07 2012 我将日期传递给 ajax 调用DD MM
  • ListDictionary 类是否有通用替代方案?

    我正在查看一些示例代码 其中他们使用了ListDictionary对象来存储少量数据 大约 5 10 个对象左右 但这个数字可能会随着时间的推移而改变 我使用此类的唯一问题是 与我所做的其他所有事情不同 它不是通用的 这意味着 如果我在这里
  • 更改显示的 DPI 缩放大小使 Qt 应用程序的字体大小渲染得更大

    我使用 Qt 创建了一些 GUI 应用程序 我的 GUI 应用程序包含按钮和单选按钮等控件 当我运行应用程序时 按钮内的按钮和字体看起来正常 当我将显示器的 DPI 缩放大小从 100 更改为 150 或 200 时 无论分辨率如何 控件的
  • 不同类型的指针可以互相分配吗?

    考虑到 T1 p1 T2 p2 我们可以将 p1 分配给 p2 或反之亦然吗 如果是这样 是否可以不使用强制转换来完成 或者我们必须使用强制转换 首先 让我们考虑不进行强制转换的分配 C 2018 6 5 16 1 1 列出了简单赋值的约束

随机推荐

  • 返回列表 1 和列表 2 中的项目匹配的列表

    假设我有 2List
  • 关于清单文件中的“singleton:= true”

    我有一个插件 目前没有任何扩展点 它也不扩展任何其他插件 为了解决某个问题 我必须为此插件创建一个扩展点 并在其他地方创建一个适当的扩展 当做这个日食时迫使我设置singleton true在清单文件中 我知道必须设置此参数的原因 但我想知
  • 检查字符串中所有字符是否相等的函数 javascript - 作业警告

    我找到了这个作业问题的解决方案 但我不认为这是解决问题的最有效方法 对我应该探索的其他解决方案感兴趣 问题 编写一个名为 allEqual 的函数 如果字符串中的每个字符都相同 则返回 true Example 如果你传递 aaa 它应该返
  • 重绘中的图形绘制随机线条

    因此 我正在创建一个手绘 JPanel 它对鼠标移动做出反应并绘制线条 我让它大部分工作 除了一个错误 它会在线条之间随机绘制一条直线 这条随机直线不是故意的 缓冲图像上绘制的内容应该严格是用户绘制的 这些随机绘制的线条不是由用户完成的 而
  • Saas:单实例、多实例、单租户、多租户?

    我一直在阅读有关实例和租户以及 Saas 架构的内容 我的问题如下 如果您发现我对以下任何术语有错误 请更正 1 实例 某个软件的实例是否只是该软件的副本及其自己的数据库 还有比这更重要的事情吗 2 Tenant 租户是对单个实例共享一组通
  • Golang 中的位掩码和按位运算

    一般来说 我是编程的初学者 所以如果我在提出这个问题时犯了一些错误 我很抱歉 我正在遵循的教程将详细介绍此代码 package main import fmt const isAdmin 1 lt lt iota isHeadquarter
  • 动画计数器从开始值到结束值

    我想在我的网站上放置一个柜台 以下代码适用于非常大的数字 但像 3 或 95 5 这样的小数字则不起作用 但它适用于超过 1000 的数字 您认为 JavaScript 代码编写的问题出在哪里 预先感谢您的指导 const counters
  • 模板专用函数

    我需要使用模板类对我的函数进行专门化 并且遇到 非法使用显式模板参数 的问题 template
  • MySQL 复合在 FK 上是独一无二的

    我想在mysql中实现以下约束 create table TypeMapping constraint unique server id type id constraint foreign key server id references
  • wicked_pdf 生产中字体太大

    我遇到一个问题 渲染的 PDF 的字体大小为产量较大 在开发中生成的 PDF 中 一切看起来都很棒 这是来自的渲染图发展 这是来自的渲染图生产 这使得我很难为开发中的生产服务器格式化我的文档 你能看一下吗 HTML 版本 http www
  • jqGrid没有addJSONData方法

    今天下午我只是在玩 jqGrid 让它与本地数组数据源配合得很好 但是 现在我正在尝试让它加载本地 JSON 数据 我的代码如下 jQuery list4 jqGrid datatype json lt Also tried local h
  • 如何使用 angularjs 关闭点击主体时动态生成的下拉菜单?

    你好 我正在 angularjs 中开发 Web 应用程序 在右上角 我有一个下拉框 只有在用户登录后才会激活 我有一个场景 用户单击下拉菜单 一旦他单击页面上的任意位置 我想关闭下拉菜单 长期以来我一直在努力解决这个问题 我创建了 plu
  • Python Mysql,“命令不同步;您现在无法运行此命令”

    我有一个从 Python 执行的 MySQL 存储过程 包装在 Django 中 当我尝试执行第二条语句时 出现错误 命令不同步 您现在无法运行此命令 我目前无法提交交易 这只是我调用过程时的一个问题 该怎么办 cursor callpro
  • 如何在 Grails 插件中实现 Groovy 全局 AST 转换?

    我想在编译时修改一些 Grails 域类 我最初认为这是 Groovy 的全局 ASTTransformation 的工作 因为我不想注释我的域类 本地转换器需要 最好的方法是什么 我也尝试模仿DefaultGrailsDomainClas
  • 从 LinqToTwitter IAuthorizer 中提取 BearerToken

    希望对我认为简单的问题有一个简单的答案 经过身份验证后 是否可以从 IAuthorizer 中提取 BearerToken 使用 LinqToTwitter 进行授权后 我想进行自己的 API 调用 并且需要 BearerToken 来执行
  • Maven 的环境变量

    我已将一个项目从 Eclipse 移植到 Maven 并且需要设置一个环境变量以使我的项目正常工作 在 Eclipse 中 我转到 运行 gt 运行配置 然后在 环境 选项卡下 将 WSNSHELL HOME 设置为值 conf 我怎样才能
  • 在c#中裁剪图像

    我有一张图像 当我按下表单上的按钮时 我想裁剪它 我有以下代码 在按下按钮时运行 但它不会对图像执行任何操作 try Image image Image FromFile test jpg Bitmap bmp new Bitmap 200
  • 估算数据的多项回归

    我需要估算缺失的数据 然后使用生成的数据集进行多项回归 我尝试使用小鼠进行插补 然后使用 nnet 中的多项函数进行多项回归 但这给了我不可读的输出 以下是使用 mouse 包提供的 nhanes2 数据集的示例 library mice
  • 证书注册流程是怎样的?

    我正在寻找注册证书的程序 我搜索了很多但没有找到好的答案 到目前为止 我明白首先我必须生成一个密钥存储 用于创建公钥和私钥 然后私钥应保持私有 公钥与其他信息 如名称和组织 一起发送到 CA 然后CA会生成一些东西并返回给我一些包含公钥和信
  • .Net 正则表达式将 $ 与字符串结尾而不是行匹配,即使启用了多行

    我试图突出显示降价代码 但遇到了 NET 正则表达式多行选项的奇怪行为 下面的表达式 在任何在线正则表达式测试工具上都可以正常工作 但它拒绝与 net 一起使用 它似乎没有考虑 标签 只是突出显示所有内容 直到字符串末尾 无论如何 这是我的