Sponsored Content
Full Discussion: SED * operator
Top Forums Shell Programming and Scripting SED * operator Post 302271163 by matrixmadhan on Wednesday 24th of December 2008 03:45:12 AM
Old 12-24-2008
Quote:
Originally Posted by sinpeak
Thanks to all for the replies.

To matrixmadhan :

Going by your reply -

"It should match zero or more characters in the character class [a-z]
it will match 'a', 'b', 'c' and not the next space character <' '> so just that part is replaced by 'X'"

I tried :-

echo "a 123 abc" | sed 's/[a-z]*/X/'
echo "ab 123 abc" | sed 's/[a-z]*/X/'
echo "abc 123 abc" | sed 's/[a-z]*/X/'

all gave the same output as : X 123 abc

From your reply and the above result I understand - "*" will always start checking from the left in the input string. If it does not find a match , 'X' is replaced at the very beginning of the input string and the job is done.

But if it does find a match , it ends trying to find another match AND 'X' is kept in place of the matched token/characters.

Would request you to please confirm/correct the above.

Thanks

It will check from the start of the string ( <left of the string> ) and I hope this is what you meant, right?

Rest, you are right.

You need to remember this * means match zero or more characters.

There is going to be a definite replacement of zero or more matching characters.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Operator question

I need to find out if a variable contains a certain text string, then do something about it. Here is what I mean, but I don't know how to get a "contains" operator # We have volumes called: # /Volumes/BackupsA_K # /Volumes/BackupsL_Z # /Volumes/Backups_Admin # (could be more, etc)... (5 Replies)
Discussion started by: TheCrunge
5 Replies

2. Shell Programming and Scripting

And operator

I am trying to check two variables and if both are blank I want to set a flag: the_f3_pid=`rsh $target ps -ef | grep "f3.eab" | awk '{print $2}'` the_f7_pid=`rsh $target ps -ef | grep "f7.eab" | awk '{print $2}'` if ; then y=1 fi I get an error: ./script_name: test: 0403-021 ]... (4 Replies)
Discussion started by: rcarnesiii
4 Replies

3. HP-UX

Or operator with if

hi, i was trying to club to test condition with if. if -o ; then it is giving me error message, i wanted to ask how can we check two condtions with one if. (1 Reply)
Discussion started by: babom
1 Replies

4. Programming

new operator

Hi, Please clear the 2 questions, 2 Questions, 1) Why the new as a operator? Is there any special reason why it can't be a function like malloc? 2) How are we considering sizeof(),new are as a opearartors? I know + - * / -> , . etc.. are operators, which criteria satisfied by sizeof()... (4 Replies)
Discussion started by: Nagapandi
4 Replies

5. Shell Programming and Scripting

op of logical operator

Why the op of the following code is like this ???? i=4 j=-1 k=0 echo $? echo $? echo $? (5 Replies)
Discussion started by: lipun4u
5 Replies

6. Shell Programming and Scripting

Difference operator

Dear All, Good day, Just i would like to know that is there anything called difference operator in awk? For example, if a file contains 5 columns (as shown below) with both negative and positive values: Col1 Col2 Col3 Col4 Col5 I need to calculate the difference between Col1 and... (3 Replies)
Discussion started by: Fredrick
3 Replies

7. UNIX for Dummies Questions & Answers

su with << operator

All, THe below is my script , when i use this i am getting nothing . could any one help me to know what is the use of the << operator below su - $8 << supo echo "exportsph $2 $1 $3 $4" exportsph $2 $1 $3 $4 supo i also tried as individual command su - userid << supo , when i do... (3 Replies)
Discussion started by: arunkumar_mca
3 Replies

8. UNIX for Dummies Questions & Answers

+= operator

im new to bash scripting and im just using online tutorials and trial and error. i wanted to write a script to read numbers from a file and find their sum: #!/bin/bash theSum=0 for line in $(cat numbers.txt) do let "theSum = theSum + $line" echo "$line" done echo "The sum is... (3 Replies)
Discussion started by: astrolux444
3 Replies

9. Shell Programming and Scripting

sed or operator

hi, I got a requirement to change existing script like below to search additional pattern "DB select". i tried using \| opearator but it is not working :(. Below is the existing code echo $(cat ${1} |sed -n '/Error in/ { N N N /Too many/ { p ... (5 Replies)
Discussion started by: shyamxtasy
5 Replies

10. UNIX for Dummies Questions & Answers

Confusion with ++ operator

Can anyone guide me whats happening in this program given below. I got the Output 7 7 12 49... i was expecting 5 16 9 25. First is simple (3+1)*(3+1) Second is again 3*3; i =4 now Third i =5 then 5*5; i don't know where i am going wrong! #include<stdio.h> #define PRODUCT(x) (x*x) int... (5 Replies)
Discussion started by: Abhishek_kumar
5 Replies
EvmEventNameMatch(3)					     Library Functions Manual					      EvmEventNameMatch(3)

NAME
EvmEventNameMatch(), EvmEventNameMatchStr() - match EVM event name SYNOPSIS
Library EVM Support Library Parameters pattern The event name pattern sought. The pattern may be any valid event name string. It may include wildcard characters in place of any component. event The event containing the event name to be compared against the pattern. match The result of the match. This operand is set to if the name matches the pattern, and to if it does not. candidate A character string to be matched against the pattern DESCRIPTION
Because special matching rules apply when deciding whether a candidate event name matches a known name, the EVM name matching functions should be used for matching purposes, rather than the C string comparison functions The EVM functions match an event name against a sup- plied pattern, ignoring any trailing appended components in the candidate name, and correctly matching wildcard characters. The function takes an event and an event name pattern as input, and returns an indication of whether the event contains a name which matches the pattern in the match output argument. The pattern may be any valid event name string, and may also include wildcard characters in place of any component. A wildcard in the pattern matches zero or more name components. A matches exactly one component. A match occurs if the event name matches all components indicated by the pattern, even if the name has additional trailing elements. The function performs the same check as but takes a character string as the candidate event name, instead of extracting the candidate event name from a supplied event. Both functions set the match output argument to if the name matches the pattern, and to if it does not. RETURN VALUE
The operation completed without error. The comparison was successful. The value of the match operand indicates whether the name matches the pattern. One of the arguments to the function is invalid. The supplied pattern contains invalid characters. The supplied event does not contain a name. ERRORS
The value of is not set. SEE ALSO
Routines memccpy(3C), strcat(3C). Event Management EVM(5). EVM Events EvmEvent(5). EvmEventNameMatch(3)
All times are GMT -4. The time now is 12:35 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy