Problem with sed wildcard "*"


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Problem with sed wildcard "*"
# 8  
Old 12-03-2012
Link explains various characters and their usage with sed:

[Chapter 3] 3.2 A Line-Up of Characters
# 9  
Old 12-03-2012
Quote:
Originally Posted by mukulverma2408
Thanks Vgresh for your quick help, but i think i am not able to explain my problem properly.
can you please also explain a bit about '*' in sed?
I tried but i am really getting confused with this.
* does not work by itself in a regular expression. It means 'zero or more of the previous character'.

. means 'any character'.

So if you wanted a, something, c, you could do a.*c

Last edited by Corona688; 12-03-2012 at 05:35 PM..
# 10  
Old 12-03-2012
Thanks in2nix4life and Corona688,

I am gonna spend some more time to get a better picture, thanks a lot for your help.
# 11  
Old 12-04-2012
It is probably a problem in understanding, not in using:

Suppose you have a string

Code:
abc

and you want to match it, based on the "a" and the "c" occurring. You are looking for one occurrence of "a", followed by whatever, followed by one occurrence of "c". But if you look for "zero (or more) occurrences of 'a'", you basically don't care for the "a" at all - "zero or more" can also be "zero", which means there is no "a" there.

This begs the question what an expression like "a*" is good for, if it means that the "a" is optional at all. Well, suppose the following:

Code:
/xa*y/

This would match any "x", followed by zero or more "a"s, followed by "y". Strings matched by this would be:

Code:
xy
xay
xaaaaay
..etc.

Not matched would be:

Code:
xby
xbcdefy
xblablay
..etc.

In other words: our expression means that between "x" and "y" only "a"s are allowed - regardless how many, even zero - but if there is anything in between "x" and "y" it has to be "a"s and "a"s alone.

I hope this helps.

bakunin
# 12  
Old 12-05-2012
Thanks Bakunin,

That was really helpful......

Thanks again.... Smilie
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

"GET" command retrieves multiple files while using wildcard

Hi All I am using GNU/Linux This is regarding the get command to retrieve files (filename with wild card characters) from remote server. I thought Get command can retrieve only 1 file irrespective of the files it has on the remote server And it is the function of mget to retrieve all... (7 Replies)
Discussion started by: sparks
7 Replies

2. Shell Programming and Scripting

Awk,sed : change every 2nd field ":" to "|"

Hi Experts, I have a string with colon delimited, want 2nd colon to be changed to a pipe. data: 101:8:43:4:72:14:41:69:85:3:137:4:3:0:4:0:9:3:0:3:12:3: I am trying with sed, but can change only 1 occurance: echo "101:8:43:4:72:14:41:69:85:3:137:4:3:0:4:0:9:3:0:3:12:3:" | sed 's/:/|/2'... (5 Replies)
Discussion started by: rveri
5 Replies

3. Post Here to Contact Site Administrators and Moderators

Suggestion: adding two new groups "sed" and "awk"

Majority of the questions are pertaining file/string parsing w.r.t sed or awk It would be nice to have these two as their own sub category under shell-programming-scripting which can avoid lot of duplicate posts. (1 Reply)
Discussion started by: jville
1 Replies

4. Shell Programming and Scripting

how to use "cut" or "awk" or "sed" to remove a string

logs: "/home/abc/public_html/index.php" "/home/abc/public_html/index.php" "/home/xyz/public_html/index.php" "/home/xyz/public_html/index.php" "/home/xyz/public_html/index.php" how to use "cut" or "awk" or "sed" to get the following result: abc abc xyz xyz xyz (8 Replies)
Discussion started by: timmywong
8 Replies

5. Shell Programming and Scripting

Using sed to find text between a "string " and character ","

Hello everyone Sorry I have to add another sed question. I am searching a log file and need only the first 2 occurances of text which comes after (note the space) "string " and before a ",". I have tried sed -n 's/.*string \(*\),.*/\1/p' filewith some, but limited success. This gives out all... (10 Replies)
Discussion started by: haggismn
10 Replies

6. Shell Programming and Scripting

awk command to replace ";" with "|" and ""|" at diferent places in line of file

Hi, I have line in input file as below: 3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL My expected output for line in the file must be : "1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL" Can someone... (7 Replies)
Discussion started by: shis100
7 Replies

7. Shell Programming and Scripting

Simplify Bash Script Using "sed" Or "awk"

Input file: 2 aux003.net3.com error12 6 awn0117.net1.com error13 84 aux008 error14 29 aux001.ha.ux.isd.com error12 209 aux002.vm.ux.isd.com error34 21 alx0027.vm.net2.com error12 227 dux001.net5.com error123 22 us008.dot.net2.com error121 13 us009.net2.com error129Expected Output: 2... (4 Replies)
Discussion started by: sQew
4 Replies

8. Shell Programming and Scripting

cat $como_file | awk /^~/'{print $1","$2","$3","$4}' | sed -e 's/~//g'

hi All, cat file_name | awk /^~/'{print $1","$2","$3","$4}' | sed -e 's/~//g' Can this be done by using sed or awk alone (4 Replies)
Discussion started by: harshakusam
4 Replies

9. UNIX for Advanced & Expert Users

A question/problem about oracle "tns listener" and "enterprise manager"

hi, I have a problem about the Oracle related components. I'm not able to find any answer yet, and waiting for your responses... Here is the configuration of my system: * an IBM P550 machine, * an AIX 5.3 running on it and * an oracle database, already installed on it. The problem (or... (1 Reply)
Discussion started by: talipk
1 Replies

10. UNIX and Linux Applications

A question/problem about oracle "tns listener" and "enterprise manager"

hi, I have * an IBM P550 machine, * an AIX 5.3 running on it and * an oracle database, already installed on it. The problem (or question of my own) is: Oracle tns listener, "CT_LISTENER", and the enterprise manager (EM) of the instance, which is uniq instance and called... (0 Replies)
Discussion started by: talipk
0 Replies
Login or Register to Ask a Question