我一直试图在python中使用正则表达式来匹配单个标点符号或它们的组。例如,我想分割标点符号,例如'!?!'只是' @'。
我有以下正则表达式:(["#$%&()*+,-/:;<=>@[\]^_`{|}~]|[.?!]+)
,它主要执行我想要的操作,但它似乎单独捕获句点(因此我得到.
.
.
而不是...
)
我不明白的是,如果我将,
字符放在第一个[]
组中的其他位置,它就可以正常工作......即使只有一个字符左右。
那里有一些意义吗?当我拥有它时,为什么它不能正常工作? (取自string.punctuation
)
提前致谢。我已经四处寻找,无法找到任何东西......所以希望这不是一个愚蠢的问题......
答案 0 :(得分:3)
在字符类(正则表达式中的方括号语法)中,连字符表示一系列字符。您的方括号中有,-/
,表示它将与, - . /