Regex 正则表达式:当我无法删除全局区分大小写的修饰符时,如何覆盖它?

Regex 正则表达式:当我无法删除全局区分大小写的修饰符时,如何覆盖它?,regex,Regex,我有以下正则表达式: /I_CAN_MODIFY_ONLY_THIS/i 我无法删除I全局修饰符。我唯一能做的就是用一些东西来代替,我只能修改这个。有没有办法克服全局案例不敏感 类似的东西显然是存在的:(?i)caseless(?-i)caseless(?i)caseless,但我无法让它工作 编辑: 显然,内联模式修饰符在我需要在此处使用的正则表达式引擎中不起作用是的,您可以通过使用内联区分大小写标志(?-I)覆盖全局区分大小写。所以,这个正则表达式应该是 (?-i)i_can_modify

我有以下正则表达式:

/I_CAN_MODIFY_ONLY_THIS/i
我无法删除
I
全局修饰符。我唯一能做的就是用一些东西来代替
,我只能修改这个
。有没有办法克服全局案例不敏感

类似的东西显然是存在的:
(?i)caseless(?-i)caseless(?i)caseless
,但我无法让它工作

编辑:
显然,内联模式修饰符在我需要在此处使用的正则表达式引擎中不起作用

是的,您可以通过使用内联区分大小写标志
(?-I)
覆盖全局区分大小写。所以,这个正则表达式应该是

(?-i)i_can_modify_only_this
请参见这些被称为“内联模式修改器”

如果你尝试过,但没有成功,那么很遗憾,我认为简单的答案是否定的

有不同的风格/引擎/实现,有些支持,有些不支持。所以这完全取决于正则表达式是如何运行的

一些支持它刚开始,重写任何外部列出,而其他支持放置在正则表达式的中间。< /P> 在你链接到的同一个网站上,它们提供了口味的比较——从这里,我很快编辑了以下列表:

内联模式修改器支持 开始或中间:Python

刚开始:JGsoft、.NET、Java、Perl、PCRE、PCRE2、PHP、Delphi、R、XRegExp、Ruby、Boost(ECMA)、Tcl

一点也不:Javascript、VBScript、std::Regex、POSIX BRE、GNU BRE、GNU ERE、Oracle、XML、XPath


他们在问题中提到,他们已经尝试过这个方法,但它不起作用,但他们举了一个例子,说明他们确实知道如何使用抱歉,伙计们!我希望我用错了,而且有可能成功。