【问题标题】:needs to find \t in the middle of a string需要在字符串中间找到 \t
【发布时间】:2016-08-30 16:20:49
【问题描述】:

我有一个包含两个变量的 json 文件:

\t\t"ROW_ID" : 475895,

\t\t"TEXT" : "TITLE:\tCardiology Consult\n\t24 Hour Events:\n\tPatient without any further...

我需要在TEXT 中间找到标签(\t)(因为我无法将它正确加载到 python 中),而不是行首的标签,所以我可以删除它们。我遇到了麻烦,因为行首有两个制表符,所以.\t 不起作用。使用记事本++。有什么想法吗?

【问题讨论】:

  • 通常的答案会不会是:“使用另一个 JSON 解析器”或“\t 在 json 字符串中是非法的”? :) 不确定哪一个更接近标记,因为我通常避免使用 JSON...
  • 发布一些示例代码,您如何尝试在 python 中加载它?我希望 json.loads() 处理得很好。
  • 那些应该是字符串中间的制表符吗?因为你用“\n”而不是“\t”来标记它们。
  • 试试\t+(?=")....

标签: python json regex


【解决方案1】:

简单。使用消极的后视,您可以确保您没有不必要地删除紧跟在换行符之后的标签。

(?<!\n)\t+

如果您担心\n 会匹配字符n 而不是某些正则表达式引擎上的换行符,请改用\x0A

(?<!\x0A)\t+

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多