查找两个开始和结束参数之间的文本匹配项



我想知道是否有一个更优化或最有效的文字来匹配所有变体以找到文本的所有一致性,传递两个参数(开始,结束(,而不考虑内部字符。

正则表达式(color[^$]*blue)

Lorem ipsum dolor, sit amet consectetur adipisicing elit. color Dolores ducimus nulla doloribus quod odit modi perspiciatis delectus earum nisi, sit ex! blue Doloribus dolores provident hic consequuntur natus ipsa inventore expedita!
Fugit autem saepe fuga maiores quo optio exercitationem reiciendis COLOR deleniti iure ipsam beatae nostrum vel dolore dolorum id esse inventore eligendi velit ut temporibus eius in, BLUE corrupti laboriosam modi. Excepturi.
Iure maiores, fuga neque vitae est repellendus colorpraesentium accusamus, magnam nesciunt cumque fugiat nonblue impedit! Laborum exercitationem architecto fugiat libero eaque provident voluptatem aperiam unde nulla impedit porro, itaque nisi.

预期成果

  1. color Dolores ducimus nulla doloribus quod odit modi perspiciatis delectus earum nisi, sit ex! blue
  2. COLOR deleniti iure ipsam beatae nostrum vel dolore dolorum id esse inventore eligendi velit ut temporibus eius in, BLUE
  3. colorpraesentium accusamus, magnam nesciunt cumque fugiat nonblue

这匹配颜色和蓝色(包含(之间的所有内容,中间没有颜色或蓝色:

(?i)color(?:(?!color|blue).)*blue

演示和解释

如果预期的结果是你想要的,这应该是你的解决方案: https://regexr.com/4rjt3

标志"i"将使正则表达式不区分大小写。

请注意 - 我用(.*)替换了[^$],因此您将单独获得结果。

最新更新