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

例子:

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#。

最佳答案

您可以根据 负前瞻 使用此正则表达式:

^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/

    10-09 05:33