The if command simply evaluates another command, and examines its exit code to decide whether to take the then branch or the else branch (if present). You can use the expr command to match a string against a regular expression, or echo | grep. I would recommend case for this, though, even if it actually uses glob expressions, not true regular expressions.
Some shells also have built-in regex operators with the [[ conditional ]] syntax.
All of these are more or less functionally equivalent. (They will not reject an empty string as not a number; implementing that is left as an exercise.)
Last edited by era; 05-22-2008 at 07:23 AM..
Reason: Will accept empty string as well as numbers, actually
hello,
I use AIX with ISM PILOT, I want to match something with a varible like this :
$variable = 10 #this variable is the number of the job
"$variable STARTED" # the pattern
how can use this variable to match it with the word STARTED
Tanks (0 Replies)
Anyone know how I will use awk's variable in a regular expression?
This line of code of mine is working, the value PREMS should be a variable:
awk '$1 ~ /PREMS/ { if(length(appldata)+2 >= length($1)) print $0; }' appldata=$APPLDATA /tmp/file.tmp
The value of APPLDATA variable is PREMS.
... (2 Replies)
Hi,
I have this script:
awk -v va=45 '$0~va{print}' flo2
That returns: "4526745 1234 " (this is the only line of the file "flo2".
However, I would like to get "va" to match the begining of the line, so that is "va" is different than 45 (eg. 67, 12 ...) I would not have any output. That... (3 Replies)
Hi All,
Below is a sample code:
print "Enter the Name: ";
my $Name = <>;
print "Word is $Name";
open (FH,"AIDNameList.txt");
while (<FH>)
{
my $line;
print "Word is $Name";
for $line(<FH>)... (12 Replies)
Hi,
I need to compare file names in a folder with several strings(which are in regular expression format):
For example:
there is a file "objectMyHistoryBook" and there are several strings to compare this file name with:
objectMyMaths*, objectMyEnglish*, objectMyHistory*,... (2 Replies)
Hi all,
How am I read a file, find the match regular expression and overwrite to the same files.
open DESTINATION_FILE, "<tmptravl.dat" or die "tmptravl.dat";
open NEW_DESTINATION_FILE, ">new_tmptravl.dat" or die "new_tmptravl.dat";
while (<DESTINATION_FILE>)
{
# print... (1 Reply)
i have a command line like this in csh script
grep -i "$argv$"
which i wanted to select the line ending with string provided as argument but it couldn't interpret the '$' (ending with)..
any help? (3 Replies)
Readers,
Reading a previous post about comparing files using awk ('awk-compare-2-columns-2-files-output-whole-line', https://www.unix.com/shell-programming-scripting/168432-awk-compare-2-columns-2-files-output-whole-line.html), it is possible to adjust this, so that regular expression can be used... (8 Replies)
I'm trying to use a series of regular expressions as variables but can't get it to behave properly.
You can see below what I'm trying to do.
Here with lowercase a-z and the same with uppercase, numbers 0-9 and again with a set of special characters, without having to type out every single... (3 Replies)
Hi,
Im facing a weird behavior storing regular expression in a vaiable.
Let us consider
>file_name=CTP02_*.tar
when I echo the above variable its displaying below which is file
CTP02_*tar
but when I create a file with name CTP02_1234.tar, and when I echo $file_name its showing... (3 Replies)
Discussion started by: rdineshredy
3 Replies
LEARN ABOUT FREEBSD
re_exec
RE_COMP(3) BSD Library Functions Manual RE_COMP(3)NAME
re_comp, re_exec -- regular expression handler
LIBRARY
Compatibility Library (libcompat, -lcompat)
SYNOPSIS
#include <unistd.h>
char *
re_comp(const char *s);
int
re_exec(const char *s);
DESCRIPTION
This interface is made obsolete by regex(3).
The re_comp() function compiles a string into an internal form suitable for pattern matching. The re_exec() function checks the argument
string against the last string passed to re_comp().
The re_comp() function returns 0 if the string s was compiled successfully; otherwise a string containing an error message is returned. If
re_comp() is passed 0 or a null string, it returns without changing the currently compiled regular expression.
The re_exec() function returns 1 if the string s matches the last compiled regular expression, 0 if the string s failed to match the last
compiled regular expression, and -1 if the compiled regular expression was invalid (indicating an internal error).
The strings passed to both re_comp() and re_exec() may have trailing or embedded newline characters; they are terminated by NULs. The regu-
lar expressions recognized are described in the manual entry for ed(1), given the above difference.
DIAGNOSTICS
The re_exec() function returns -1 for an internal error.
The re_comp() function returns ``no previous regular expression'' or one of the strings generated by regerror(3).
SEE ALSO ed(1), egrep(1), ex(1), fgrep(1), grep(1), regex(3)HISTORY
The re_comp() and re_exec() functions appeared in 4.0BSD.
BSD June 4, 1993 BSD