09-26-2007
From the man page of bash:
Quote:
${parameter//pattern/string}
The pattern is expanded to produce a pattern just as in
pathname expansion. Parameter is expanded and the
longest match of pattern against its value is replaced
with string. In the first form, only the first match
is replaced. The second form causes all matches of
pattern to be replaced with string. If pattern begins
with #, it must match at the beginning of the expanded
value of parameter. If pattern begins with %, it must
match at the end of the expanded value of parameter.
If string is null, matches of pattern are deleted and
the / following pattern may be omitted. If parameter
is @ or *, the substitution operation is applied to
each positional parameter in turn, and the expansion is
the resultant list. If parameter is an array variable
subscripted with @ or *, the substitution operation is
applied to each member of the array in turn, and the
expansion is the resultant list.
I didn't get what this means though... trying to figure that out.
-edit
Ah, got it. This checks if the 'pattern' after being expanded in the same way as pathname expansion, is a substring of 'parameter'. If it is, you can replace it with 'string'. In your case, 'string' doesn't exist, so it will be replaced with nothing. If 'pattern' isn't a substring of 'parameter', then no just 'parameter' is the result. So what the if conditional is checking is whether stringtwo is a substring of stringone. If it is, the resultant expansion will not match with stringone.
Last edited by blowtorch; 09-26-2007 at 07:41 AM..
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi Guys,
I am trying to write a perl script to search a string "Name" in the file "FILE" and also want to create a new file and push the searched string Name line along with 10 lines following the same.
can anyone of you please let me know how to go about it ? (8 Replies)
Discussion started by: sukrish
8 Replies
2. Shell Programming and Scripting
Can someone tell me how I can do this?
e.g:
a=$(echo -e wert trewt ertert ertert ertert erttert
erterte
rterter
tertertert
ert)
How do i replace the STRING with $a?
I try this:
sed -i 's/STRING/'"$a"'/g' filename.ext
but this don' t work (2 Replies)
Discussion started by: jforce
2 Replies
3. Shell Programming and Scripting
continuing from my previous post, whose link is given below as a reference
https://www.unix.com/shell-programming-scripting/171076-shell-scripting.html#post302573569
consider there is create table commands in a file for eg:
CREATE TABLE `Blahblahblah` (
`id` int(11) NOT NULL... (2 Replies)
Discussion started by: vivek d r
2 Replies
4. Shell Programming and Scripting
here is what i want to achieve... consider a file contains below contents. the file size is large about 60mb
cat dump.sql
INSERT INTO `table1` (`id`, `action`, `date`, `descrip`, `lastModified`) VALUES (1,'Change','2011-05-05 00:00:00','Account Updated','2012-02-10... (10 Replies)
Discussion started by: vivek d r
10 Replies
5. Shell Programming and Scripting
I am attempting to grep an exact string from a series of files within a directory and append that output to the filename when it is present in the file. I've been after this all day with no luck. Thanks for your help in advance :wall:. (4 Replies)
Discussion started by: JC_1
4 Replies
6. Shell Programming and Scripting
Hi,
I am trying to remove lines once a string is found till another string is found including the start string and end string. I want to basically grab all the lines starting with color (closing bracket). PS: The line after the closing bracket for color could be anything (currently 'more').... (1 Reply)
Discussion started by: Dabheeruz
1 Replies
7. Shell Programming and Scripting
I am having a text file which is having more than 200 lines.
EX:
001010122 12000 BIB 12000 11200 1200003
001010122 2000 AND 12000 11200 1200003
001010122 12000 KVB 12000 11200 1200003
In the above file i want to search for string KVB and add/replace... (1 Reply)
Discussion started by: suryanarayana
1 Replies
8. Shell Programming and Scripting
Dear All
I am having a text file which is having more than 200 lines.
EX:
001010122 12000 BIB 12000 11200 1200003
001010122 2000 AND 12000 11200 1200003
001010122 12000 KVB 12000 11200 1200003
In the above file i want to search for string KVB... (5 Replies)
Discussion started by: suryanarayana
5 Replies
9. Shell Programming and Scripting
I have the logic below to look up for matches within the columns between the two files with awk.
In the if statement is where the string comparison is attempted with ==
The issue seems to be with the operands, as
1. when " '${SECTOR}' " -- double quote followed by single quote -- awk matches... (1 Reply)
Discussion started by: deadyetagain
1 Replies
10. UNIX for Beginners Questions & Answers
I want to search a small string in a large string and find the locations of the string. For this I used grep "string" -ob <file name where the large string is stored>. Now this gives me the locations of that string. Now how do I store these locations in a text file.
Please use CODE tags as... (7 Replies)
Discussion started by: ANKIT ROY
7 Replies
LEARN ABOUT PHP
mb_ereg_replace
MB_EREG_REPLACE(3) 1 MB_EREG_REPLACE(3)
mb_ereg_replace - Replace regular expression with multibyte support
SYNOPSIS
string mb_ereg_replace (string $pattern, string $replacement, string $string, [string $option = "msr"])
DESCRIPTION
Scans $string for matches to $pattern, then replaces the matched text with $replacement
PARAMETERS
o $pattern
- The regular expression pattern. Multibyte characters may be used in $pattern.
o $replacement
- The replacement text.
o $string
- The string being checked.
o $option
- Matching condition can be set by $option parameter. If i is specified for this parameter, the case will be ignored. If x is
specified, white space will be ignored. If m is specified, match will be executed in multiline mode and line break will be
included in '.'. If p is specified, match will be executed in POSIX mode, line break will be considered as normal character. If e
is specified, $replacement string will be evaluated as PHP expression.
RETURN VALUES
The resultant string on success, or FALSE on error.
NOTES
Note
The internal encoding or the character encoding specified by mb_regex_encoding(3) will be used as the character encoding for this
function.
Warning
Never use the e modifier when working on untrusted input. No automatic escaping will happen (as known from preg_replace(3)). Not
taking care of this will most likely create remote code execution vulnerabilities in your application.
SEE ALSO
mb_regex_encoding(3), mb_eregi_replace(3).
PHP Documentation Group MB_EREG_REPLACE(3)