Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Perl: how to split a file?
- *****3123123*****RAW
- text1
- text2
- *****2312354***RAW
- text3
- *****3123123*****RAW
- text1
- text2
- *****312312354***RAW
- text3
- open FILE, "<file";
- @file= <FILE>;
- close FILE;
- @lines = split (/(RAWn)/, "@file");
- foreach $value (@lines) {
- if ($value =~ /[a-z]|[A-Z]|[1-9]/) {
- print ("$valuen");
- }
- }
- *****3123123*****RAW
- text1
- text2
- *****312312354***RAW
- text3
- *****3123123*****RAW
- text1
- text2
- *****12354***RAW
- text3
- use strict;
- use warnings;
- @ARGV or die "Input file required as command-line parametern";
- my $out;
- while (<>) {
- if ( /(d+)*+RAW$/ ) {
- open $out, '>', "$1.out" or die $!;
- select $out;
- }
- print $_ if $out;
- }
- use strictures;
- use File::Slurp qw(read_file write_file);
- my $raw = read_file('raw.txt', binmode => ':raw');
- my $header = qr/^ (?= [*]+ [0-9]+ [*]+ RAWn)/msx;
- my @chunks = split $header, $raw;
- # (
- # "*****3123123*****RAWntext1ntext2n",
- # "*****2312354***RAWntext3"
- # )
- for my $i (1..@chunks) {
- write_file("File$i.txt", {binmode => ':raw'}, $chunks[$i-1]);
- }
- #!usr/bin/perl
- my $fi, $fi2;
- my $line;
- my $i;
- my @lines;
- my @filenameparts;
- my $filename = "file_1.txt";
- open($fi, "< original.txt");
- @lines = <$fi>;
- open ($fi2, " > $filename");
- foreach (@lines)
- {
- if (($i > 0) and $_ =~ /RAW/)
- {
- @filenameparts = split("_", $filename);
- foreach (@filenameparts)
- {
- print "Woooo".$_;
- }
- @filenameparts[1] = substr(@filenameparts[1], 0, @filenameparts[1].length() - 5);
- @filenameparts[1] = ($filenameparts[1] + 1);
- $filename = @filenameparts[0]."_".@filenameparts[1].".txt";
- print $filename;
- close($fi2);
- open ($fi2, " > $filename");
- $i = 0;
- print $fi2 $_;
- }
- else
- {
- print $fi2 $_;
- }
- $i++;
- }
Add Comment
Please, Sign In to add comment