Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python不区分大小写替换而不影响重新缓存_Python_Regex - Fatal编程技术网

Python不区分大小写替换而不影响重新缓存

Python不区分大小写替换而不影响重新缓存,python,regex,Python,Regex,相关问题: 在不损坏re模块中的缓存的情况下进行不区分大小写的替换的最佳方法是什么?我正在仔细监视缓存,以确保我最喜欢的正则表达式保持在那里(当然是速度) 我只是注意到我的代码: ner_token_result = re.sub('(?i)'+leftover, corrected_word, ner_token_result) 每次运行时都重新编译剩余部分是动态的(基于用户输入) 我喜欢正则表达式(速度快,我能读),但我不想破坏我的缓存 我不想使用无大小写字符串类 我不想看到转换成小写、替

相关问题:

在不损坏re模块中的缓存的情况下进行不区分大小写的替换的最佳方法是什么?我正在仔细监视缓存,以确保我最喜欢的正则表达式保持在那里(当然是速度)

我只是注意到我的代码:

ner_token_result = re.sub('(?i)'+leftover, corrected_word, ner_token_result)
每次运行时都重新编译<代码>剩余部分是动态的(基于用户输入)

我喜欢正则表达式(速度快,我能读),但我不想破坏我的缓存

我不想使用无大小写字符串类

我不想看到转换成小写、替换和恢复大小写的丑陋


请帮助?

如果您的其他表达式是预编译的,则表示您执行了以下操作:

regex = re.compile(leftover, re.I)

这意味着您将能够引用
regex
,而不考虑缓存重载。如果您没有这样做,请对需要在整个代码中重复使用的正则表达式执行此操作。

如果您的其他表达式是预编译的,则表示您执行了以下操作:

regex = re.compile(leftover, re.I)

这意味着您将能够引用
regex
,而不考虑缓存重载。如果您没有这样做,请对那些需要在整个代码中重复使用的正则表达式执行此操作。

显然,每次
剩余的
更改时都需要编译动态正则表达式。您是否担心这会将您的其他正则表达式推出缓存


如果是这样的话,只需编译您正在使用的其他正则表达式即可。compile

显然,每次
剩余的
更改时都需要编译动态正则表达式。您是否担心这会将您的其他正则表达式推出缓存


如果是这样的话,只需编译您正在使用的其他正则表达式就可以了。编译

破坏缓存意味着什么?为什么它是关于不区分大小写的替换,而不是任何其他类型的匹配操作?我的所有其他正则表达式都是预编译的(并存储在重新缓存中)。因为输入是动态的,所以当我想进行无壳替换时,我不能这样做。我将接受一个很好的答案,这个答案不使用正则表达式来解决这个问题,或者使用正则表达式但不向重新缓存添加另一个已编译正则表达式。我的应用程序有连续的输入,它们将从缓存中清除我的其他正则表达式。破坏缓存意味着什么?为什么它是关于不区分大小写的替换,而不是任何其他类型的匹配操作?我的所有其他正则表达式都是预编译的(并存储在重新缓存中)。因为输入是动态的,所以当我想进行无壳替换时,我不能这样做。我将接受一个很好的答案,这个答案不使用正则表达式来解决这个问题,或者使用正则表达式但不向重新缓存添加另一个已编译正则表达式。我的应用程序有连续的输入,它们将从缓存中清除我的其他正则表达式。hmmm。。。Compile也使用缓存。。。我错过了什么?嗯。。。Compile也使用缓存。。。我错过了什么?