python - 如何获得转义字符的正确位置?

标签 python string find

获取这个变量

str = 'how{"to\"get\"this"}position'

我想获取字符串\"的位置,应该是7

print str.find('\"') 由于转义字符而返回 4。

print str.find('\"')('\')(r'\'),返回 - 1、没有结果

那么我应该使用什么子字符串来获得正确的结果?

实际的字符串是 ' [{....,"html":"< spanclass=\"icon-pitisscon-service-duliag\">",....}] ' ,它是一个 json 格式字符串, 由于\",我无法使用 json.loads() 函数,我该怎么办?谢谢

最佳答案

你的strhow{"to"get"this"}position,它里面没有\";所以find(r'\"') 将返回 -1

>>> str = 'how{"to\"get\"this"}position'
>>> str
'how{"to"get"this"}position'
>>> 

如果你想拥有 str = how{"to\"get\"this"}position then;

>>> str = r'how{"to\"get\"this"}position'
>>> str
'how{"to\\"get\\"this"}position'
>>> str.find(r'\"')
7
>>> 

关于python - 如何获得转义字符的正确位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35401962/

相关文章:

python - 如何在视频结束后自动点击网页上的 "next"或 "previous"按钮?

python - pandas 将属性值更改为对象的行值

Python 字符串作为子进程的文件参数

JavaScript 字符串替换不起作用

java - 模式 XXYYZZ 的正则表达式

excel - 如何从Excel VBA中的Find函数获取单元格地址

python - 非矩形四边形上并集的交集

带新行的 JavaScript 字符串 - 但不使用\n

c# - 当有复合主键并且只想使用一个时使用 db.Find

matlab - 在向量上查找另一个特定数字之前的数字