【问题标题】:Format text file on OSX to tab delimited text file将 OSX 上的文本文件格式化为制表符分隔的文本文件
【发布时间】:2012-03-07 07:07:47
【问题描述】:

我有一个如下所示的文件,它是从我用 applescript 编写的程序输出的。

AXTitle: Blah
AXSize: Width: 300
AXSize: Height: 44
AXPosition: X: 217
AXPosition: Y: 170
AXHelp: Blah
AXValue: Value, On
AXEnabled: true
AXFocused: false
AXRole: AXStaticText
AXRoleDescription: Blah
AXTopLevelUIElement: Blah
AXWindow: Blah

我需要输入一种与数据库兼容的格式。所以是制表符分隔的格式。这是我想要输出的格式。我不需要上面的所有数据,只是我选择的数据

123   456   0   1   2   3   4   5   text   text     
123   456   0   1   2   3   4   5   text   text  

我正在考虑正则表达式来根据需要格式化文本。 我可以在applescript中做到这一点吗?如果不是,考虑到我在 OSX 上工作,我应该看哪些程序? sed、gawk、perl、python?我可以在我的 applescript 程序中插入这些程序还是必须单独运行?

【问题讨论】:

    标签: regex scripting applescript osx-snow-leopard csv


    【解决方案1】:

    当您获得您选择的项目时,只需添加选项卡即可。您还可以将项目放入列表中,您可以在列表中使用文本项目分隔符将项目之间的制表符转换为字符串。

    set X to {123, 456, 0, 1, 2, 3, 4, 5, "text", "text"}
    set {tempTID, AppleScript's text item delimiters} to {AppleScript's text item delimiters, tab}
    set {X, AppleScript's text item delimiters} to {X as text, tempTID}
    
    X --> result
    

    【讨论】:

      【解决方案2】:

      这是一个很好的教程: http://www.grymoire.com/Unix/Sed.html

      set xxx to "Here is my input" 
      do shell script "echo " & xxx & " | sed 's/my/your/'"
      

      【讨论】:

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