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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.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,我想用python编写一个正则表达式,在字符串中找到,并用替换它。角括号内字符的位置可能会更改。例如:它可能是或等等。角括号中的一个字符是空格。正则表达式应该找到这些事件中的任何一个,并将其替换为。关于类似的问题还有很多,但我想不出答案。怎么做?试试这个正则表达式 <[\/td= ]{5}> 重新导入 字符串到进程=r'或' 替换字符串=r“” td_regex=re.compile(r'') td_regex.sub(替换字符串、字符串到字符串过程) 对于您在评论中提出

我想用python编写一个正则表达式,在字符串中找到
,并用
替换它。角括号内字符的位置可能会更改。例如:它可能是
等等。角括号中的一个字符是空格。正则表达式应该找到这些事件中的任何一个,并将其替换为
。关于类似的问题还有很多,但我想不出答案。怎么做?

试试这个正则表达式

<[\/td= ]{5}>

重新导入
字符串到进程=r'或'
替换字符串=r“”
td_regex=re.compile(r'')
td_regex.sub(替换字符串、字符串到字符串过程)

对于您在评论中提出的问题,请使用以下正则表达式:

<[^>]*?t[^>]*?d[^>]*?\/[^>]*?>|<[^>]*?t[^>]*?\/[^>]*?d[^>]*?>|<[^>]*?d[^>]*?t[^>]*?\/[^>]*?>|<[^>]*?d[^>]*?\/[^>]*?t[^>]*?>|<[^>]*?\/[^>]*?t[^>]*?d[^>]*?>|<[^>]*?\/[^>]*?d[^>]*?t[^>]*?>
]*?t[^>]*?d[^>]*?t[^>]*?\/[^>]*?\/[^>]*?d[^>]*?d[^>]*?t[^>]*?t[^>]*?\/[^>]*?d[^>]*?\/[^>]*?t[^>]*?*?\/[^>]*?t[^>]*?*?>*?*?*?*?[^>]*?*?[^>]*?[^>]*?*?**?[^>]**?[^>]**?[^>]
请看这里:

重新导入
字符串到进程=r'或'
替换字符串=r“”
td\u regex=re.compile(r']*?t[^>]*?d[^>]*?\/[^>]*?>\/[^>]*?t[^>]*?d[^>]*?d[^>]*?t[^>]*?t[^>]*?\/[^>]*?d[^>]*?\/[^>]*?\/[^>]*?t[^>]*?t[^>*?]*?*?*?*?[^>]*?*?*?[^>]**?*?**?[^>]
td_regex.sub(替换字符串、字符串到字符串过程)

这很有效。只想知道我们是否可以检查角括号是否在任何位置包含字符
/td
,我们可以用
替换整个字符串。如何为此编写正则表达式?请参见;除了替换,您还想知道三个字符/td是否按该顺序出现?我想检查字符
/
t
d
是否以任何顺序出现在角括号内的任何位置,然后用
替换整个字符串。您确定吗?在任何位置以任何顺序?您有三个字符,因此,所有可能的顺序都是6(即3!=3*2*1)。。。可能是,,,和,在哪里。。。是什么,甚至是什么。。。这就是你想要的吗?是的,先生。我们怎么用python编写正则表达式呢?
<[^>]*?t[^>]*?d[^>]*?\/[^>]*?>|<[^>]*?t[^>]*?\/[^>]*?d[^>]*?>|<[^>]*?d[^>]*?t[^>]*?\/[^>]*?>|<[^>]*?d[^>]*?\/[^>]*?t[^>]*?>|<[^>]*?\/[^>]*?t[^>]*?d[^>]*?>|<[^>]*?\/[^>]*?d[^>]*?t[^>]*?>
import re
string_to_process=r'</t= d> or </= td>'
substitute_string=r'</td>'
td_regex=re.compile(r'<[^>]*?t[^>]*?d[^>]*?\/[^>]*?>|<[^>]*?t[^>]*?\/[^>]*?d[^>]*?>|<[^>]*?d[^>]*?t[^>]*?\/[^>]*?>|<[^>]*?d[^>]*?\/[^>]*?t[^>]*?>|<[^>]*?\/[^>]*?t[^>]*?d[^>]*?>|<[^>]*?\/[^>]*?d[^>]*?t[^>]*?>')
td_regex.sub(substitute_string, string_to_process)