09-26-2011
How to compare a file name with a regular expression !!
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*, objectMyChemistry* etc
so I tried this:
file=objectMyHistoryBook
#there are several files in the concerned folder so assigning each name in 'file'
if [ [ $file="objectMyMaths*"] -o [ $file="objectMyEnglish*" ] -o [ $file="objectMyHistory*"] -o [ $file="objectMyChemistry] ];
then
{file name matches one of the string so do this }
fi
But this is not working. Need help..!!
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
is it possible? if so, how?
i want to check a variable whether is it a number or letter in an if-else statement (6 Replies)
Discussion started by: finalight
6 Replies
2. Shell Programming and Scripting
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)
Discussion started by: jolecanard
3 Replies
3. Shell Programming and Scripting
I'm trying to math all class references in a C++ file using grep with regular expression. I'm trying to know if a specific include is usuless or not, so I have to know if there is a refence in cpp.
I wrote this RE that searches for a reference from class ABCZ, but unfortunately it isn't working... (0 Replies)
Discussion started by: passerby
0 Replies
4. Programming
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)
Discussion started by: jessy83
1 Replies
5. UNIX for Dummies Questions & Answers
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)
Discussion started by: linuxr
8 Replies
6. UNIX for Advanced & Expert Users
Hello All,
I'm trying to extract the lines between two consecutive elements of an array from a file.
My array looks like:
problem_arr=(PRS111 PRS213 PRS234)
j=0
while } ]
do
k=`expr $j + 1`
sed -n "/${problem_arr}/,/${problem_arr}/p" problemid.txt
---some operation goes... (11 Replies)
Discussion started by: InduInduIndu
11 Replies
7. Shell Programming and Scripting
Hi all
I have a list of file names in array. But this file names are not exact. so i want to search whether a file exists or not using regular expression.
code snippet:
if ;
then
echo "File exists"
else
echo "File does not exits"
fi
over here "*EQST*" should be treated as a regular... (4 Replies)
Discussion started by: Ganesh_more
4 Replies
8. UNIX for Dummies Questions & Answers
Hi Gurus,
I need to identify the file with below format:
ABC20110101.DAT
ABCD2011010103.DAT
If I use ABC*\.DAT, it get two file. I want to get file after "ABC' then number, the ".DAT".
I tried
ABC* but it doesn't work.
Thanks in advance. (9 Replies)
Discussion started by: ken6503
9 Replies
9. Shell Programming and Scripting
Hello Everyone,
I have a file sam1 with the below content
SYSYSID;MANDT;/SIE/AD_Z0M_INDX;/SIE/AD_Z0M_KEY1
echo $Regex
\bSYSYSID\b|\bMANDT\b|\b/SIE/AD_Z0M_INDX\b|\b/SIE/AD_Z0M_KEY1\b
cat sam1 | grep -Eo $Regex
I expect the result as
SYSYSID
MANDT
/SIE/AD_Z0M_INDX
/SIE/AD_Z0M_KEY1... (4 Replies)
Discussion started by: sam99
4 Replies
10. Shell Programming and Scripting
#!/bin/sh
Today=date '+%Y%m%d'
for file in `ls *.csv *txt`
do
echo "Start woprking with ${file}"
if ; then
do something
elif ; then
do something
else
echo "Unkniowned file name"
... (6 Replies)
Discussion started by: digioleg54
6 Replies
LEARN ABOUT FREEBSD
re_comp
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