Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.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中使用re替换两个或多个重复的:punct:re?_Python_Regex_Re - Fatal编程技术网

如何在python中使用re替换两个或多个重复的:punct:re?

如何在python中使用re替换两个或多个重复的:punct:re?,python,regex,re,Python,Regex,Re,我需要替换一些字符串上的两个或更多重复标点符号作为空格 "asdasdasd - adasdasd asda ------- asda wadsda +-----+ wwww qqqqqq aaaaa" 到 使用regex101应用程序,我创建了此应用程序: 但当我尝试python时: import re texto = "asdasdasd - adasdasd asda ------- asda wadsda +-----+ wwww qqqqqq aaaa

我需要替换一些字符串上的两个或更多重复标点符号作为空格

"asdasdasd - adasdasd asda ------- asda wadsda +-----+ wwww qqqqqq aaaaa"

使用regex101应用程序,我创建了此应用程序:

但当我尝试python时:

import re
texto = "asdasdasd - adasdasd asda ------- asda wadsda +-----+ wwww qqqqqq aaaaa"
rx = re.compile(r'([[:punct:]])\1{2,}')
texto = rx.sub(' ', texto)
print(texto)
我有一个错误:

FutureWarning: Possible nested set at position 2
  rx = re.compile(r'([[:punct:]])\1{2,}')

如何使用python运行这个(或类似的)正则表达式?

python
re
无法识别POSIX括号表达式,因此
[[:punct:]
看起来像一个嵌套的字符类(因此出现警告消息)。您可以将其替换为包含所有标点字符的字符类,例如
[!-/:-@[-`{-~]
。请注意,您的正则表达式需要3个或更多相同字符(初始捕获组加上2个或更多重复),您只需要
+
而不是
{2,}
并且您需要替换为
\1
以在输出中获得一次重复字符:

import re
texto = "asdasdasd - adasdasd asda ------- asda wadsda +-----+ wwww -- qqqqqq aaaaa"
rx = re.compile(r'([!-/:-@[-`{-~])\1+')
texto = rx.sub(r'\1 ', texto)
print(texto)
输出:

asdasdasd - adasdasd asda -  asda wadsda +- + wwww -  qqqqqq aaaaa

Python
re
库是一个已知的事实。请注意,
re
[[:punct:]
解析为
[[:punct:]
字符类,然后是一个literal
]
字符,它匹配
[]
:]
p]
等字符串

[:punct://code>POSIX字符类是属于标点符号和符号Unicode类的一组字符,它们的当前列表可以与包含的非常长的字符类相匹配。请注意,
[!-/:@[-`{-~]
只是一个仅匹配ASCII标点符号的小
:punct:
子集

下面是一个支持Unicode的完整正则表达式,它可以匹配重复的
:punct:
字符,并用第一个匹配的字符替换它们:

重新导入
re_punct=r'[!-/\:-@\[-`\目前,u00B4\u00B4\U00BB4\u00B6-\U00BB4\u00B6-\u00B8\u00B8\u00B8\U00BB8\U00BBB8\u00A1-\u00A1-\u00A1-\u00A1-\u00A1-\u00A1-\u00A1-\u00A1-\u00A1-\u00A1-\U00BB8\U00BB8\u00B8\U00BBB8\U00BB8\U00BBB8\U00BBBBB8\U00BBBBBB8\u00B8\u00B8\U00BBB8\U00BB8\U00BBB8\\U00BBBBBBBBBBBBBBBB7\\u00BB\ U00bbbbbbbbbbbbF4\u0606-\u060F\u061B\u061E\u061F\u066A-\u066D\u06D4\u06DE\u06E9\u06FD\u06FE\u0700-\u070D\u07F6-\U07F6-\U07F6-\U07F6-\U07F6-\U07F6-\u0830-\U086\U096\u0970\u0970\U096-\U07F6-\U07F6-\U07F6-\U07F6-\u0830-\U083-\U083\U083\U083\U086\u0964\u0964\u0964\u0965\u0965\u0965\u0970\u0970\u0970\u0970\u0970\u0970\U或者或者或者或者或者或者或者要么要么要么要么要么要么要么要么要么要么要么要么要么要么要么要么要么或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者D\u0F85\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE-\u0FDA\u104A-\u104F\u109E\u109F\u10FB\u1360-\u1368\u1390-\u1399\u14010\0\0 0\10 6 6 6 6 6 6 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FEF\U1FD\u1FFE\u2010-\u2027\u2030-\u205E\u207A-\u207U2\U10 10\U10 10\U10 10 10\U2 10 10\U2 10 10 10\U10 10 10\U10 10 10\U2 108\UU10 10 10\UU10 10 10\UU2 11\U2 114\U2 11\U2\U2 08A\U2 08A\U2 08A\U2 08A\U2 08A\U2 08A\U2 08A\U2\U10\U10\U10\U10\U10\U10\U10\U10\U10\U10\U10 10\U10\U10 10\U2\U10 10 10 10 10\U2\U2 114\U11\U11\U11\U11\U11\U11\U11\U11\U11\U11\U11\U11\U11\U11\U11\U11\U2 11\U11\U11\U11\U11\U11\U11\U2 11\U2 u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E80-\u2E92009年9月9岁以下以下以下以下音乐的流行音乐的流行音乐的流行音乐的流行音乐的流行音乐的流行音乐的流行音乐的流行音乐的流行音乐的流行音乐的流行4\u3008-\u3004\U30 0 0 0 0 0 0 0\U3 3 0 0 0 0\U3 3 3\U9\U9\U9\U2\U9\U9\U9 9 9\U8\U8\U3 3\U3 3 0 0 0 0 0 0 0 0 0 0 0 0\U3\U3\U3 3 3 0 0 0 0 0 0 0 0 0 0\U3\U3 3 3\U3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0\U3\U3 3\U3 3 3 3 3 3\U3 3 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0\U3 3 3 3 3 3\U3 3\U3 3 3 3 3 3 3 3\U3 3 3 3 3 3 3\uA4C6\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA700-\uA716\uA720\uA721\uA788\uA877\ua8 8 8 8\ua8 8 8 8 8 8 8 8 8 8 8 8 8 8 0 0 0 0 0 0 8 8 8 8 8 8 8 ua8 8 8 8 8 8 8 8 8 8 8\ ua8 8 8 8 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8存存存存存存存ua8 8 8 8 8 8 8 8存存存存存存ua8 8 8 8 8 8 8 8 8 ua8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8存存存存存存存存存存存存ua8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 uFF01-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFE0-\uFFE6\uFFE8-\(U00001017-U00001010179-\U0000101010101017\U0000101010101017\U00001010179-\U00001010189\U00001010101010189\U0000101010101010189\U00001010101010101010101010101010101010101010101019-\U00001010101010101010101010179-\U00001010101010101010179-\U000010101010179-\U000010101010101017-\U000010101010101010101017-\\U00001010101010101010101010101017-\或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者或者0101010101U00010B9C\U00010F55-\U00010F59\U00011047-\U0001104D\U000110BB\U000110BC\U000110BE-\U000110C1\U00011140-\U00011143\U00011174\U00011175\U000111C5-\U000111C8\U0001111DF\U00011238-\U0001123D\U000112A9\U0001144B-\U0001144F\U0001114B\U0001114D\U0001115C6\U000115C1-\U00011C8\U00011DF\U0001118-\U000116C-\U000116C-\U000116C3\U000013 3 3 B\U000013 3 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 A 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0001d100-\U0001D126\U00000010 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10\U00012008年10月10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0\U02007年7月7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 U0001F97A-\U0001F9A2\U0001F9A5-\U0001F9AA\U0001F9AE-\U0001F9CA\U0001F9CD-\U0001FA53\U0001FA60-\U0001FA6D\U0001FA70-\U0001F
asdasdasd - adasdasd asda -  asda wadsda +- + wwww -  qqqqqq aaaaa