c# - 正则表达式 - 以模式开始而不以模式结束

标签 c# regex

如何使用正则表达式来检查字符串是否以特定模式开头并且不以特定模式结尾。

示例:

Must StartsWith: "US.INR.USD.CONV"
Should not end with: ".VALUE"

Passes Regex: "US.INR.USD.CONV.ABC.DEF.FACTOR"
Fails Regex Check: "US.INR.USD.CONV.ABC.DEF.VALUE"

我正在使用 C#。

最佳答案

你可以使用这个基于negative lookahead的正则​​表达式:

^US\.INR\.USD\.CONV(?!.*?\.VALUE$).*$

RegEx Demo

说明:

  • ^US\.INR\.USD\.CONV - 在输入开始时匹配 US.INR.USD.CONV
  • (?!.*?\.VALUE$) - 否定前瞻以确保行不以 .value 结尾

关于c# - 正则表达式 - 以模式开始而不以模式结束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27946775/

相关文章:

c# - c# 中的正则表达式包括注释

c# - 从右到左 DatagridviewCell

c# - 类库允许使用未分配的结构

c# - UWP Windows 10 中的多线程

java - 如何找到模式的后半部分?

java - 从给定字符串替换\n\r 和\t 的最佳方法

java - 一个事务中的多个聚合实例

c# - 标签尺寸不正确

PHP - 如何使用逗号分解字符串,除了当逗号在撇号内时的情况?

Java 正则表达式 : Look behind group does not have an "obvious maximum length"