Sponsored Content
Full Discussion: awk or regex
Top Forums Shell Programming and Scripting awk or regex Post 302312302 by durden_tyler on Thursday 30th of April 2009 10:24:20 PM
Old 04-30-2009
Quote:
Originally Posted by smihael
And what is I have following input:
...
How to add OR sentences in perl?

I mean if there is both AVTOR and ODGOVORNOST paramter, use AVTOR if there is one of them use it.
Maybe something like this:

Code:
perl -ne '{
  /^<b> FIZI.*?(\S+)<\/b>/ and $nvd = $1;
  /^<b> AVTOR.*?>(.*?), (.*?)<\/a>.*?<\/b>/ and $avt = "$2 $1";
  /^<b> ODGOVORNOST.*?>(.*?), (.*?)<\/a>.*?<\/b>/ and $odg = "$2 $1";
  /^<b> NASLOV.*?: (.*?)<\/b>/ and $nsl = $1; $nsl =~ s/#//g;
  /^<b> IMPRESUM.*?: (.*?)<\/b>/ and $kzl = $1; ($krj,$zlz,$lto) = split(/ : |, /, $kzl); $krj =~ s/ \[etc.\]//g;
  /^<b> COBISS.*?: (\d+)<\/b>/ and $cbs = $1;
  /^<b> ISBN.*?: (\S+)<\/b>/ and $isb = $1;
}
END {
  printf("{{Navedi %s\n|avtor= %s\n|naslov= %s\n|kraj= %s\n", $nvd, ($avt or $odg), $nsl, $krj);
  printf("|zalozba= %s\n|leto= %s\n|cobiss_id= %s\n|isbn= %s\n}}\n", $zlz, $lto, $cbs, $isb);
}' <input_file>

HTH,
tyler_durden

_________________________________________________________________________________________________
"And the eighth and final rule: if this is your first time at Fight Club, you have to fight."
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Extracting a regex with awk

I have a regexp that I wish to match against every line of a file using awk. But I do not want to substitute it or select the line. I want to pull the matched text out and put it in a different file, line by line. What is the correct awk usage to *extract* a regexp and put it in another... (11 Replies)
Discussion started by: Enobarbus37
11 Replies

2. Shell Programming and Scripting

AWK regex to find only numbers

Hi guys I need to find both negative and positive numbers from the following text file. And i also dont need 0. 0 8 -7 -2268 007 -07 -00 -0a0 0a0 -07a0 7a00 0a0 Can someone please give a regex to filter out the values in red. I tried a few things in awk but it didnt work... (9 Replies)
Discussion started by: sridanu
9 Replies

3. Shell Programming and Scripting

awk variables in regex expression ?

Hello, Could someone explain why this one returns nothing: $ x=/jon/ $ echo jon | awk -v xa=$x '$1~xa {print}' $ while the following works fine: $ x=jon $ echo jon | awk -v xa=$x '$1==xa {print}' $ jon and the following works fine: $ echo jon | awk '$1~/jon/ {print}' $ jon ... (3 Replies)
Discussion started by: vilius
3 Replies

4. Shell Programming and Scripting

awk regex problem

hi everyone suppose my input file is ABC-12345 ABCD-12345 BCD-123456 i want to search the specific pattern which looks like - in a file so i used this command cat $file | awk ' { if ($0 ~ /-/) { print } }' so it gives me the result as ABCD-12345 BCD-12345 BCD-12345 ... (31 Replies)
Discussion started by: aishsimplesweet
31 Replies

5. Shell Programming and Scripting

awk with multiple regex and substring

Hi Experts, I have a file on which i want to print the line which should match following criterias. Line should not start with 0 or 9 and Line should start with 1 and ( 576th character should not be 1 or 2 or 576-580 postion should not be NIPPF or CDIPB or 576-581 postion should... (2 Replies)
Discussion started by: millan
2 Replies

6. UNIX for Dummies Questions & Answers

Using AWK and regex

Hi can you suggest in this regard The sample.txt conatins the data name lines type sam 12 txt sam 24 xls sam 36 pdf ram 32 txt ram 45 sxls ram 58 word sam 92 jpeg sam 21 gif sam 22 ltf from the data i need to sum all line... (5 Replies)
Discussion started by: krashraj
5 Replies

7. Shell Programming and Scripting

awk equivalent of regex

Hi all, Can someone tell me what's the (g)awk equal of this simple regex to find ip addresses in urls: egrep "^http://{1,3}\.{1,3}\.{1,3}\.{1,3}(:{1,5})?/"Input: http://10.0.0.1/query.exe http://11y10x09w:80/howaboutme http://192.168.100.190:1234/takeme.gpg Output:... (8 Replies)
Discussion started by: r4v3n
8 Replies

8. Shell Programming and Scripting

awk regex- include text

Hi I am trying to filter some data using awk. I have a statement- awk 'BEGIN { FS = "\n" ; RS = "" } { if ( $6 = "City: " ) { print "City: Unknown" } else { print $6 } }'` The $6 values are City: London City: Madrid City: City: Tokyo This expression seems to catch all the lines... (4 Replies)
Discussion started by: jamie_123
4 Replies

9. Shell Programming and Scripting

wildcard in regex for awk

Hello I have a file like : 20120918000001413 | 1.17.163.89 | iSelfcare | MSISDN | N 20120918000001806 | 1.33.27.100 | iSelfcare | 5564 | N .... I want to extract all lines that have on 4th field (considering "|" the separator ) something other than just digits. I want to do this using a... (5 Replies)
Discussion started by: black_fender
5 Replies

10. Shell Programming and Scripting

Regex within IF statement in awk

Hello to all, I have: X="string 1-" Y="-string 2" Z="string 1-20-string 2"In the position of the number 20 could be different numbers, but I'm interest only when the number is 15, 20,45 or 70. I want to include an IF within an awk code with a regex in the following way. ... (12 Replies)
Discussion started by: Ophiuchus
12 Replies
Data(3pm)						User Contributed Perl Documentation						 Data(3pm)

NAME
Business::ISBN::Data - data pack for Business::ISBN SYNOPSIS
see Business::ISBN DESCRIPTION
This data is current as of the date in the module version. At that time, the publisher codes 9990000-9999999 or 999000-999999 had not been fixed, although they had been proposed. I do not include them in the data. Some regions, including India(93), Gabon(99902), and Congo(99951) have country codes but no publisher codes. They still have entries even though you won't be able to validate any ISBNs assigned in those regions. Business::ISBN uses this "data pack" to do its work. You can update Business::ISBN::Data independently of the main module as the various ISBN organizations assign new publisher codes. The ISBN agency lists these data at http://www.isbn-international.org/converter/ranges.htm . It's also available as a javascript file at http://www.isbn-international.org/converter/ranges.js . The make_data.pl program creates the meat of this module. Note, that as a historical artifact, some countries are actually language areas. For instance, country code 2 is "French", and includes several French-speaking countries. Simply install this module over the previous version. The module is a Perl data structure, so you can install it with CPAN.pm, or simply copy it to the right location. Older versions of this module did not declare a version, and will work with whatever version of Business::ISBN you have despite anything the Makefile.PL might say. Some versions tracked the version of Business::ISBN. Starting in October 2008, the version is the date of the module update (as YYYYMMDD). If you make updates, please send them to me so I can include them in future releases. SOURCE AVAILABILITY
This module lives in the Github repository with Business::ISBN: git://github.com/briandfoy/business--isbn.git AUTHOR
brian d foy, "<bdfoy@cpan.org>" Yakov Shafranovich updated the data in October 2008. COPYRIGHT AND LICENSE
Copyright (c) 2002-2008, brian d foy, All Rights Reserved. You may redistribute this under the same terms as Perl itself. perl v5.10.0 2008-12-05 Data(3pm)
All times are GMT -4. The time now is 08:57 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy