Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想在一些括号内匹配一个字符串。我的字符串可能有一些撇号。我正在使用以下模式进行匹配,但这并没有拾取字符串,我真的不明白为什么 - 任何想法?
pattern = re.compile('<([\w\s\']+)>', re.IGNORECASE)
例如,<Let's rock!>会产生Let's rock!
<Let's rock!>
Let's rock!
你没有撇号问题,你有一个感叹号问题。感叹号既不是单词 ( \w) 也不是空格 ( \s) 也不是撇号。!所以如果你想允许的话,你应该添加到你的角色类中。
\w
\s
!
你不能用一个简单的.,例如,逃脱'<(.+)>'吗?
.
'<(.+)>'
此外,如果您需要在字符串中嵌入单引号,则通常不使用单引号会更容易,例如"<([\w\s']+)>".
"<([\w\s']+)>"