Pamu, Thanks very much for your answer.
Please check the details of the requirements below:
The next month i might get a record like this
"Menstrain,arr",A0022699,"Woodstock,IL",2,"A001,3195",RockfordIL,"A001,3243","Chicago,america",EMERG INGQUALITY
will your script work for the above ?
My point is the script should replace comma with pipeline at the same time it should check whether the column has comma inside the double qouted qualifier for each record and shouldnt replace those. A column will have double qoutes in the data only if it has comma inside it. Next month i may get different column which has comma inside it and being double qouted.
Why you don't try by yourself...?
Please use code tags for code and data sample.
And always provide every details about input and desired output.
Please try to give your desired output.
I have a csv file and there is a problem which I need to resolve.
Column1,Column2,Colum3,Column4
,x,y,z
,d,c,v
t,l,m,n
,h,s,k
,k,,y
z,j, ,p
Now if you see column1 for row 1 and row 4 though they are null there is a space but in case of row2 and row 5 there is no space.
I want row... (3 Replies)
Hi,
Requirement: Exporting data from Oracle to UNIX into "Comma" delimiter.
Help Needed: I was able to connect to Oracle and import the data. But please let me know while importing the data I need to make it into Comma delimiter flat file.
For Example:
Source Data -
100 ABC TLead... (6 Replies)
Hello,
I am having flat file (Comma Delimiter) and the data in the file is as given below.
EMPNO, ENAME, DESIGNATION, SALARY
10979, Arun Kumar, Cosultant, 35000
13555, Bidhu Shekar, Senior Consultant, 45000
15000, Kiran, Kumar, Senior, Consultant, 40000
If... (9 Replies)
I have a text file delimited by commas, with three fields (no " marks).
I want to use awk to create a fourth field which is equal to the line number + field 1 + .txt
I've searched this forum and found the following
nawk -v OFS=';' '{print $0, FNR}' myFile
Which I've amended to change the... (2 Replies)
Hi,
I'm dealing with an issue and losing a lot of hours figuring out how i would solve this.
I have an input file which looks like this:
('BLABLA +200-GRS','Serviço ','TarifaçãoServiço','wap.bla.us.0000000121',2985,0,55,' de conversão em escada','Dia','Domingos')
('BLABLA +200-GRR','Serviço... (6 Replies)
Dear Friends,
I have file as below
1|sdf|rere|sert|trt|rtr
i want to change the delimeter first three columns two fields
expected output
1~sdf~rere|sert|trt|rtr
Plz help (2 Replies)
The input file is as below
AR,age,marks,roll,section,evin,25,80,456,A,atch,23,56,789,B,eena,24
,78H245,C,Ps,ot,ecessary,hat,ame comes first then age and rest AR
AZ,kevin,25,80,456,A,Satch,23,56,789,Satch,23,56,789,B,Meena,24,78,H245,C,AZ
................
................
I am writting... (8 Replies)
Hi,
Extremely new to Perl scripting, but need a quick fix without using TEXT::CSV
I need to read in a file, pass any delimiter as an argument, and convert it to bar delimited on the output. In addition, enclose fields within double quotes in case of any embedded delimiters.
Any help would... (2 Replies)
Hi All,
I have a file which has data like
a,b
c,d
e,f
g,h
And I need to insert a new column at the begining with sequence no( 1 to n)
1,a,b
2,c,d
3,e,f
4,g,h
Please let me know how to acheive this in unix (3 Replies)
Discussion started by: weknowd
3 Replies
LEARN ABOUT DEBIAN
xml::sax::pipeline
XML::SAX::Pipeline(3pm) User Contributed Perl Documentation XML::SAX::Pipeline(3pm)NAME
XML::SAX::Pipeline - Manage a linear pipeline of SAX processors
SYNOPSIS
use XML::SAX::Machines qw( Pipeline ); ## Most common way
use XML::Fitler::Foo;
my $m = Pipeline(
XML::Filter::Foo->new, ## Create it manually
"XML::Filter::Bar", ## Or let Pipeline load & create it
"XML::Filter::Baz",
{
## Normal options
Handler => $h,
}
);
## To choose the default parser automatically if XML::Filter::Foo
## does not implement a parse_file method, just pretend the Pipeline
## is a parser:
$m->parse_file( "blah" );
## To feed the pipeline from an upstream processor, treat it like
## any other SAX filter:
my $p = Some::SAX::Generator->new( Handler => $m );
## To read a file or the output from a subprocess:
my $m = Pipeline( "<infile.txt" );
my $m = Pipeline( "spew_xml |" );
## To send output to a file handle, file, or process:
my $m = Pipeline( ..., *STDOUT );
my $m = Pipeline( ..., ">outfile.txt" );
my $m = Pipeline( ..., "| xmllint --format -" );
DESCRIPTION
An XML::SAX::Pipeline is a linear sequence SAX processors. Events passed to the pipeline are received by the "Intake" end of the pipeline
and the last filter to process events in the pipeline passes the events out the "Exhaust" to the filter set as the pipeline's handler:
+-----------------------------------------------------------+
| An XML:SAX::Pipeline |
| Intake |
| +---------+ +---------+ +---------+ Exhaust |
--+-->| Stage_0 |--->| Stage_1 |-->...-->| Stage_N |----------+----->
| +---------+ +---------+ +---------+ |
+-----------------------------------------------------------+
As with all SAX machines, a pipeline can also create an ad hoc parser (using XML::SAX::ParserFactory) if you ask it to parse something and
the first SAX processer in the pipeline can't handle a parse request:
+-------------------------------------------------------+
| An XML:SAX::Pipeline |
| Intake |
| +--------+ +---------+ +---------+ Exhaust |
| | Parser |-->| Stage_0 |-->...-->| Stage_N |----------+----->
| +--------+ +---------+ +---------+ |
+-------------------------------------------------------+
or if you specify an input file like so:
my $m = Pipeline(qw(
<input_file.xml
XML::Filter::Bar
XML::Filter::Baz
));
Pipelines (and machines) can also create ad hoc XML::SAX::Writer instances when you specify an output file handle (as shown in the
SYNOPSIS) or an output file:
my $m = Pipeline(qw(
XML::Filter::Bar
XML::Filter::Baz
>output_file.xml
));
And, thanks to Perl's magic open (see perlopentut), you can read and write from processes:
my $m = Pipeline(
"gen_xml.pl |",
"XML::Filter::Bar",
"XML::Filter::Baz",
"| consume_xml.pl",
);
This can be used with an XML::SAX::Tap to place a handy debugging tap in a pipeline (or other machine):
my $m = Pipeline(
"<input_file.xml"
"XML::Filter::Bar",
Tap( "| xmllint --format -" ),
"XML::Filter::Baz",
">output_file.xml",
);
METHODS
See XML::SAX::Machine for most of the methods.
new
my $pipeline = XML::SAX::Pipeline->new( @processors, \%options );
Creates a pipeline and links all of the given processors together. Longhand for Pipeline().
AUTHOR
Barrie Slaymaker <barries@slaysys.com>
COPYRIGHT
Copyright 2002, Barrie Slaymaker, All Rights Reserved.
You may use this module under the terms of the Artistic, GNU Public, or BSD licenses, your choice.
perl v5.10.0 2009-06-11 XML::SAX::Pipeline(3pm)