python 正则表达式查找单引号内的所有单引号

Posted

技术标签:

【中文标题】python 正则表达式查找单引号内的所有单引号【英文标题】:python regex find all single qutoes inside single quotes 【发布时间】:2016-03-01 09:38:35 【问题描述】:

你能帮我用正则表达式找到单引号内的所有单引号吗?

IE

'sinead o'connor','don't don't','whatever'

感谢您的建议。

【问题讨论】:

【参考方案1】:

好像你的字符串是用逗号分隔的。

re.sub(r"\b'\b", "''", s)

(?<=[^,])'(?!,|$)

DEMO

例子:

>>> import re
>>> s = "'sinead o'connor','don't don't','whatever'"
>>> re.sub(r"\b'\b", "''", s)
"'sinead o''connor','don''t don''t','whatever'"
>>> 

【讨论】:

您好 Avinash,感谢您的回复。你知道如何构建正则表达式来查找单引号之间的所有单引号吗?【参考方案2】:

即使没有正则表达式,您也可以做到这一点:

>>> string = "'sinead o'connor','don't don't','whatever'"
>>> string = string.replace("'", "''")
"''sinead o''connor'',''don''t don''t'',''whatever''"
>>> string.strip("'")
"sinead o''connor'',''don''t don''t'',''whatever"

【讨论】:

【参考方案3】:

试试这个:

'[\w|\s]*([']*)[\w|\s]*'

在regex101.com上查看这个

【讨论】:

以上是关于python 正则表达式查找单引号内的所有单引号的主要内容,如果未能解决你的问题,请参考以下文章

如何使用正则表达式或任何其他方法在 PL/SQL 中提取单引号内的字符串 [重复]

Linux正则表达式中单引号双引号及不加引号的区别

使用正则表达式转义单引号字符串中的所有双引号 [重复]

单引号内的单引号删除正斜杠

python 单个正则表达式,用于解析Python单引号或双引号字符串,同时保留任何转义的引号字符

单引号之间的 Java 正则表达式内容