在Python字符串中转义正则表达式特殊字符

在Python字符串中转义正则表达式特殊字符

本文介绍了在Python字符串中转义正则表达式特殊字符的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Python是否具有可用来在正则表达式中转义特殊字符的功能?

Does Python have a function that I can use to escape special characters in a regular expression?

例如,我卡住了 :\ 应该变成我是卡住了:\\

推荐答案

使用

>>> import re
>>> re.escape(r'\ a.*$')
'\\\\\\ a\\.\\*\\$'
>>> print(re.escape(r'\ a.*$'))
\\\ a\.\*\$
>>> re.escape('www.stackoverflow.com')
'www\\.stackoverflow\\.com'
>>> print(re.escape('www.stackoverflow.com'))
www\.stackoverflow\.com

在此处重复:

返回所有非字母数字加反斜杠的字符串;从3.7开始,如果您想匹配其中可能包含正则表达式元字符的任意文字字符串,就非常有用。

Return string with all non-alphanumerics backslashed; this is useful if you want to match an arbitrary literal string that may have regular expression metacharacters in it.

从Python 3.7开始, re.escape()被更改为仅转义对正则表达式操作有意义的字符。

As of Python 3.7 re.escape() was changed to escape only characters which are meaningful to regex operations.

这篇关于在Python字符串中转义正则表达式特殊字符的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-12 12:12