で正規表現を使用して、テキストファイルの特定のテキストを選ぶ:私は、次のデータ(などの何かを)持っているSAS
DATA test2;
INPUT STRING $31. ;
PUT STRING;
DATALINES;
James Bond is a spy
Hello World
123 Mill st P BOX 223
11 prospect ave p o box
P Box 225
Hello World
pobox 2212
P. O. box. 256
;
run;
私はHello World「ので始まる行だけを読みたいです「次の空白行まで、私の出力は
Hello World
123 Mill st P BOX 223
11 prospect ave p o box
Hello World
pobox 2212
私の考えで、そのようなことを、これらの2つ(または一般的にそれ以上)のテキストのそれぞれにいくつかの操作を行い、その後、それらを一緒に追加することです。しかし、まず、必要なテキストだけをフィルタリングする必要があります。私の元のテキストファイルは巨大であり、そのスペースはどこにあるのか分かりません。 ...
data test3;
set test2;
if _n_=1 then do;
retain startline endline;
startline = prxparse('/Hello World/');
endline = prxparse('/^\s/');
end;
if (prxmatch(startline,STRING)=1 or prxmatch(endline,STRING)=1) ;
run;
それは私に次のような出力が得られますが、私も休息が必要:
私の次の試みはこれです
EDIT:私は強調すべきですテキスト内の空白行になる可能性がありますが、私は情報がの間にあるようにしてください。 "Hello World"との間には空白行
これは私に希望の出力を与えません – Erosennin
ああ、あなたが何をしたのかを2行に連結してみました... OK – Erosennin
"追加"と言ったら、テキストを連結するつもりはありませんでしたか?また、こんにちはワールドラインが含まれているか除外されていますか? – Jetzler