I have a perl script with an array of clients.
@arr = ("The ABC Corp", "AA Corp.", "BB Corp");
If I run
@a = sort (@arr);
I will get
@a = ("AA Corp", "BB Corp", "The ABC Corp");
but I want
@a = ("AA Corp, "The ABC Corp", "BB Corp");
How do I sort array without changing... (2 Replies)
I am using a seed file shown below to separate cisco devices by ios/os type. I want to bunch all the devices based on ios/os version. Once I find a match, I only want to push the ip address into the appropriate array.
Example of seedfile
8 host1 (C3500XL-C3H2S-M) 11.0(5)WC17 10.1.44.21
9... (1 Reply)
Hi all,
I've searched the forum and I can find some code to sort uniquely in perl but not by a single field.
I have a file with data such as the following:
1,test,34
1,test2,65
2,test,35,
1,test3,34
2,test,34
What i want to do is sort it uniqely by the first field only so I'd end... (2 Replies)
Hey
How do I sort an array numerically after the second column?
My values are integers like 1, 2, 3, 4... and they are not unique, so I can't just reverse my hash and sort by keys.
I wanna sort my file/array so that I get the lines with the highest value in the top - that is descending. ... (2 Replies)
Hi Everyone,
#!/usr/bin/perl
use strict;
use warnings;
my @test=("a;b;qqq;c;d","a;b;ggg;c;d","a;b;qqq;c;d");
would like to split the @test array into two array:
@test1=(("a;b;qqq;c;d","a;b;qqq;c;d"); and @test2=("a;b;ggg;c;d");
means search for 3rd filed.
Thanks
find the... (0 Replies)
Hi Everyone,
($total+=$_) for @record;
assume @record=(1,2,3), so the result is 6.
if @record=("1 3","2 3","3 3"), would like to sum up the 2nd field of this array, the result is 9.
i tried " ($total+=$) for @record ", cannot, please advice.
Thanks
---------- Post updated at 03:45... (1 Reply)
Hi,
I'm a learner of PERL programming.
I've a input file with the below data:
SWAT_5, 1703, 2010-09-21
SWAT_6, 2345, 2010-09-21
SWAT_7, 1792, 2010-09-21
SWAT_8, 1662, 2010-09-21
SWAT_9, 1888, 2010-09-21
VXHARP_1, 171, 2010-09-21
I need to sort this data based on the second... (6 Replies)
Hi,
My developer is on vacation and I am not sure if there is something which is easier for this.
I have an array of strings. Each string in the array has "%" characters in it. I have to get the string(s) which have the least number of "%" in them.
I know how I can get occurrences :
... (7 Replies)
Hi ,
I have been trying to write a perl script to do this job. But i am not able to achieve the desired result. Below is my code.
my $current_value=12345;
my @users=("bob","ben","tom","harry");
open DBLIST,"<","/var/tmp/DBinfo";
my @input = <DBLIST>;
foreach (@users)
{
my... (11 Replies)
Hi,
input:
line1|error_type_a@15
line1|error_type_c@10
line1|error_type_b@5
line2|error_type_f@3
line2|error_type_a@1
I would need to place all the second fields with common first field on the same line, BUT with sorted error position number:
line1|error_type_b@5; error_type_c@10;... (5 Replies)
Discussion started by: beca123456
5 Replies
LEARN ABOUT DEBIAN
cgi::formbuilder::source::yaml
CGI::FormBuilder::Source::YAML(3pm) User Contributed Perl Documentation CGI::FormBuilder::Source::YAML(3pm)NAME
CGI::FormBuilder::Source::YAML - Initialize FormBuilder from YAML file
SYNOPSIS
use CGI::FormBuilder;
my $form = CGI::FormBuilder->new(
source => {
source => 'form.fb',
type => 'YAML',
},
);
my $lname = $form->field('lname'); # like normal
DESCRIPTION
This reads a YAML (YAML::Syck) file that contains FormBuilder config options and returns a hash to be fed to CGI::FormBuilder->new().
Instead of the syntax read by CGI::FormBuilder::Source::File, it uses YAML syntax as read by YAML::Syck. That means you fully specify the
entire data structure.
LoadCode is enabled, so you can use YAML syntax for defining subroutines. This is convenient if you have a function that generates valida-
tion subrefs, for example, I have one that can check profanity using Regexp::Common.
validate:
myfield:
javascript: /^[sS]{2,50}$/
perl: !!perl/code: >-
{ My::Funk::fb_perl_validate({
min => 2,
max => 50,
profanity => 'check'
})->(shift);
}
POST PROCESSING
There are two exceptions to "pure YAML syntax" where this module does some post-processing of the result.
REFERENCES (ala CGI::FormBuilder::Source::File)
You can specify references as string values that start with &, $, @, or \% in the same way you can with CGI::FormBuilder::Source::File.
If you have a full direct package reference, it will look there, otherwise it will traverse up the caller stack and take the first it
finds.
For example, say your code serves multiple sites, and a menu gets different options depending on the server name requested:
# in My::Funk:
our $food_options = {
www.meats.com => [qw( beef chicken horta fish )],
www.veggies.com => [qw( carrot apple quorn radish )],
};
# in source file:
options: @{ $My::Funk::food_options->{ $ENV{SERVER_NAME} } }
EVAL STRINGS
You can specify an eval statement. You could achieve the same example a different way:
options: eval { $My::Funk::food_options->{ $ENV{SERVER_NAME} }; }
The cost either way is about the same -- the string is eval'd.
EXAMPLE
method: GET
header: 0
title: test
name: test
action: /test
submit: test it
linebreaks: 1
required:
- test1
- test2
fields:
- test1
- test2
- test3
- test4
fieldopts:
test1:
type: text
size: 10
maxlength: 32
test2:
type: text
size: 10
maxlength: 32
test3:
type: radio
options:
-
- 1
- Yes
-
- 0
- No
test4:
options: @test4opts
sort: &Someother::Package::sortopts
validate:
test1: /^w{3,10}$/
test2:
javascript: EMAIL
perl: eq 'test@test.foo'
test3:
- 0
- 1
test4: @test4opts
You get the idea. A bit more whitespace, but it works in a standardized way.
METHODS
new()
Normally not used directly; it is called from CGI::FormBuilder. Creates the "CGI::FormBuilder::Source::YAML" object. Arguments from the
'source' hash passed to CGI::FormBuilder->new() will become defaults, unless specified in the file.
parse($source)
Normally not used directly; it is called from CGI::FormBuilder. Parses the specified source file. No fancy params -- just a single file-
name is accepted. If the file isn't acceptable to YAML::Syck, I suppose it will die.
SEE ALSO
CGI::FormBuilder, CGI::FormBuilder::Source
AUTHOR
Copyright (c) 2006 Mark Hedges <hedges@ucsd.edu>. All rights reserved.
LICENSE
This module is free software; you may copy it under terms of the Perl license (GNU General Public License or Artistic License.)
http://www.opensource.org/licenses/index.html
perl v5.8.8 2007-12-09 CGI::FormBuilder::Source::YAML(3pm)