2014-01-22 74 views
0

在包含「abc」的文件a.txt中,我想用長度爲20000的字符串替換「abc」。我可以使用Stata命令filefilter來轉換文件中的ASCII文本或二進制模式來執行此操作。如何在SAS中做到這一點?如何使用SAS在記事本(txt)文件中用一個單詞替換另一個單詞

A.TXT內容:

{\rtf1 
    {\fonttbl{\f1\fmodern\fcharset134;}} 
    {\info} 
    \sectd\pgwsxn11907\pghsxn16840\marglsxn1418\margrsxn1418 
    \margtsxn1440\margbsxn1440\sectdefaultcl 
    \headery851{\header\pard\qr\fs18\par} 
    \footery992{\footer\pard\qc\f0\fs18\chpgn\par} 
    {\pard\qc\sb30\sa30\fs21 \par 
    \trowd\trautofit1\trgaph0\trleft-75\intbl\trqc   
    \clbrdrt\brdrs\brdrw30\clbrdrb\brdrs\brdrw10\clvertalc\cellx6993\clbrdrt 
    \brdrs\brdrw30\clbrdrb\brdrs\brdrw10\clvertalc\cellx13986\clbrdrt\brdrs\brdrw30 
    \clbrdrb\brdrs\brdrw10\clvertalc\cellx20979 
    \qc\fs21 x\cell\qc\fs21 y\cell\qc\fs21 z\cell\row 
    \trowd\trautofit1\trgaph0\trleft-75\trqc     
    \clvertalc\cellx6993\clvertalc\cellx13986 
    \clvertalc\cellx20979 
    \qc\fs21 a\cell\qc\fs21 b\cell\qc\fs21 abc\cell\row 
    \trowd\trautofit1\trgaph0\trleft-75\intbl\trqc 
    \clbrdrb\brdrs\brdrw30\clvertalc\cellx6993\clbrdrb\brdrs\brdrw30 
    \clvertalc\cellx13986\clbrdrb\brdrs\brdrw30\clvertalc\cellx20979 
    \qc\fs21 d\cell\qc\fs21 e\cell\qc\fs21 f\cell\row 
    }} 
+2

如果您沒有在SAS中使用它,那麼SAS就是一個不好的工具。這個範圍的範圍是什麼 - 你爲什麼要使用SAS?那麼你是否將它讀入數據集或其他東西,還是僅僅是更改.txt文件? – Joe

+0

你在使用什麼操作系統?在基於UNIX的機器上,可以像這樣調用SAS中的shell命令:'x perl -pi -w -e's/SEARCH_FOR/REPLACE_WITH/g;' a.txt'。 –

+0

謝謝。操作系統是Windows – stata

回答

0

有一些工具here,將在Windows上運行的建議。

您可以使用一個類似於FART或sed的工具,您可以使用x作爲SAS中的前綴來訪問命令行,如this

相關問題