08-20-2011
Replacing a string with its substring
Hi All,
Below is some sample content of my input file:
There are many types and traditions of anarchism, some of which are [[mutually exclusive]]. Strains of anarchism have been divided into the categories of [[social anarchism|social]] and [[individualist anarchism]] or similar dual classifications. Anarchism is often considered to be a radical [[left-wing]] ideology, and much of [[anarchist economics]] and [[anarchist law|anarchist legal philosophy]] reflect [[anti-statism|anti-statist]] interpretations of [[anarcho-communism|communism]], [[collectivist anarchism|collectivism]], [[anarcho-syndicalism|syndicalism]] or [[participatory economics]].
For the above content, if the square bracket [[mutually exclusive]] doesnt contain the delimiter '|',the substring inside the brackets, mutually exclusive, should replace the whole pattern [[mutually exclusive]].
If the square bracket contain strings separated with '|' delimiter [[social anarchism|social]] , the substring after the final delimiter in that pattern, social, should replace the whole pattern [[social anarchism|social]].
I believe this would be possible with sed and awk commands. I tried it. As am not that much conversant in unix, i could not achieve this.
Any help is appreciated. Also please recommend some useful sites/books to learn sed,awk and other text processing commands.
Thanks
Satheesh
10 More Discussions You Might Find Interesting
1. Programming
for example, the string a is "abcdefg", can i get a substring "bcd" (from ato a) from string a?
thank you (4 Replies)
Discussion started by: dell9
4 Replies
2. Shell Programming and Scripting
hi all,
I am trying to extract SUBSTRINGS out of a string using ksh.
The string is "SAPR3K.FD0.FA.TJ.B0010.T050302"
I tried using
a= `expr substr $stringZ 1 2`
which is giving me a syntax error, donno why??
any ideas why its not working??
I also tried
echo "welcome" | awk '{... (3 Replies)
Discussion started by: maradona
3 Replies
3. UNIX for Dummies Questions & Answers
Hi All,
Can anybody help me to get the substring from the given string. (3 Replies)
Discussion started by: Anshu
3 Replies
4. Shell Programming and Scripting
Hi All,
Problem Description:
XML_REP_REQUEST=`CONCSUB "$LOGIN" "SQLAP" "$RESP_NAME" "$USRNM" WAIT="Y" "CONCURRENT" "APPLICATION_SHORT_NAME"
"CP_SHORT_NAME"`
echo Report Request: $XML_REP_REQUEST --to print value in log file
While execution the value of 'XML_REP_REQUEST' is 'Prozess... (5 Replies)
Discussion started by: suman.g
5 Replies
5. Shell Programming and Scripting
#!/bin/sh
PRINTF=/usr/bin/printf
PASSWD=/etc/passwd
$PRINTF "Enter a UserID\n"
read USERID
if ; then
$PRINTF "$USERID does not exist, please contact IT service\n"
exit 1
fi
USERHOME=`grep "^$USERID:" $PASSWD | awk -F : '{print $6}'`
USERSHELL=`grep "^$USERID:"... (1 Reply)
Discussion started by: ikeQ
1 Replies
6. Shell Programming and Scripting
Hi,
I have an input string say for example:
ABC,DEF,IJK,LMN,...,XYZ
The above string is comma delimited. Now I have to extract the last part after the comma i.e. XYZ.
:b: (3 Replies)
Discussion started by: bghosh
3 Replies
7. Shell Programming and Scripting
Good morning friends,
how can i remove a string with linux scripting from a file? In specific i want to remove from a file all the tweet names and links
eg
@aerta and links such as http://dst.co/pIiu3i9c
Thanx!!! (4 Replies)
Discussion started by: paladinaeon
4 Replies
8. Shell Programming and Scripting
Hi, I have 2 statements in a file
a.sh start time is Fri Jan 9 17:17:33 CST 2015
a.sh end time is Fri Jan 9 17:47:33 CST 2015
I am required to get only the time out of it. like
17:17:33 & 17:47:33
PLs suggest (21 Replies)
Discussion started by: usrrenny
21 Replies
9. Shell Programming and Scripting
I'm attempting to replace a substring that contains a hyphen and not having much success, can anyone point out where i'm going wrong or suggest an alternative.
# echo /var/lib/libvirt/images/vm888b-clone.qcow | sed -e 's|vm888-clone|qaz|g'
/var/lib/libvirt/images/vm888b-clone.qcow (1 Reply)
Discussion started by: squrcles
1 Replies
10. Shell Programming and Scripting
Hello.
First best wishes for everybody.
here is the input file ("$INPUT1") contents :
BASH_FUNC_message_begin_script%%=() { local -a L_ARRAY;
BASH_FUNC_message_debug%%=() { local -a L_ARRAY;
BASH_FUNC_message_end_script%%=() { local -a L_ARRAY;
BASH_FUNC_message_error%%=() { local... (3 Replies)
Discussion started by: jcdole
3 Replies
REGEXP(6) Games Manual REGEXP(6)
NAME
regexp - regular expression notation
DESCRIPTION
A regular expression specifies a set of strings of characters. A member of this set of strings is said to be matched by the regular
expression. In many applications a delimiter character, commonly bounds a regular expression. In the following specification for regular
expressions the word `character' means any character (rune) but newline.
The syntax for a regular expression e0 is
e3: literal | charclass | '.' | '^' | '$' | '(' e0 ')'
e2: e3
| e2 REP
REP: '*' | '+' | '?'
e1: e2
| e1 e2
e0: e1
| e0 '|' e1
A literal is any non-metacharacter, or a metacharacter (one of .*+?[]()|^$), or the delimiter preceded by
A charclass is a nonempty string s bracketed [s] (or [^s]); it matches any character in (or not in) s. A negated character class never
matches newline. A substring a-b, with a and b in ascending order, stands for the inclusive range of characters between a and b. In s,
the metacharacters an initial and the regular expression delimiter must be preceded by a other metacharacters have no special meaning and
may appear unescaped.
A matches any character.
A matches the beginning of a line; matches the end of the line.
The REP operators match zero or more (*), one or more (+), zero or one (?), instances respectively of the preceding regular expression e2.
A concatenated regular expression, e1e2, matches a match to e1 followed by a match to e2.
An alternative regular expression, e0|e1, matches either a match to e0 or a match to e1.
A match to any part of a regular expression extends as far as possible without preventing a match to the remainder of the regular expres-
sion.
SEE ALSO
awk(1), ed(1), sam(1), sed(1), regexp(2)
REGEXP(6)