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 中提取单引号内的字符串 [重复]