Supress text


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Supress text
# 1  
Old 11-13-2014
Supress text

Hi,

I was looking for a simple code to suppress the text between 2 characters. the characters can be of same kind like "*" or "(" and ")". The number of characters are not consistent and could vary.

How can I suppress the text between 2 characters?

Code:
 Example:
Input : Hello (Within Bracket) Outside bracket ( within bracket)
          Hello (Open Bracket without closed
          Hello ****WORLD** 
          Hello *WORLD* 
          Hello "World"
Output: Hello Outside bracket 
           Hello 
          Hello 
          Hello 
          Hello

# 2  
Old 11-13-2014
Code:
perl -wlpe 's/([("].*?[)"]|\*.*\*)//g'

That would get you as far as:

Code:
Output: Hello  Outside bracket 
          Hello (Open Bracket without closed
          Hello  
          Hello  
          Hello

The red does agree with what you said, but does not with what you posted as an example of output.

It is not fool proof neither

Last edited by Aia; 11-13-2014 at 03:41 AM.. Reason: It is not fool proof
# 3  
Old 11-13-2014
I got the error message
Code:
Quantifier follows nothing in regex; marked by <-- HERE in m/([("].*?[)"]|* <-- HERE .**)/ at -e

# 4  
Old 11-13-2014
Code:
perl -wlpe 's/([("].*?[)"]|\*.*\*)//g' filename

Make sure you copy the line as given, do not remove the escape `\'
# 5  
Old 11-13-2014
I did. Perhaps even tried to introduce the escape back slashes before the open and close bracket. However, neither of them worked.
# 6  
Old 11-13-2014
Quote:
Originally Posted by ahmedwaseem2000
Hi,

I was looking for a simple code to suppress the text between 2 characters. the characters can be of same kind like "*" or "(" and ")". The number of characters are not consistent and could vary.

How can I suppress the text between 2 characters?

Code:
 Example:
Input : Hello (Within Bracket) Outside bracket ( within bracket)
          Hello (Open Bracket without closed
          Hello ****WORLD** 
          Hello *WORLD* 
          Hello "World"
Output: Hello Outside bracket 
           Hello 
          Hello 
          Hello 
          Hello

Your stated goals and your sample input and output do not match:
Why is:
Code:
          Hello (Open Bracket without closed

changed at all? There is no closing ")" to match the opening "(".

Why isn't:
Code:
          Hello ****WORLD**

changed to:
Code:
          Hello WORLD

The 1st and 2nd asterisks (and the empty string between them) should be removed, the 3rd and 4th asterisks (and the empty string between them) should be removed, and the 5th and 6th asterisks (and the empty string between them) should be removed; but not the "WORLD".
# 7  
Old 11-14-2014
Quote:
Originally Posted by Don Cragun
Your stated goals and your sample input and output do not match:
Why is:
Code:
          Hello (Open Bracket without closed

changed at all? There is no closing ")" to match the opening "(".

Why isn't:
Code:
          Hello ****WORLD**

changed to:
Code:
          Hello WORLD

The 1st and 2nd asterisks (and the empty string between them) should be removed, the 3rd and 4th asterisks (and the empty string between them) should be removed, and the 5th and 6th asterisks (and the empty string between them) should be removed; but not the "WORLD".
True - The number of opening characters are not matching the closing characters. This is not consistent across all records and not all records have this issue. I couldn't think of a pattern or otherwise a simple piece of code to handle this. Hence, I was trying to pick up others brains in achieving this.

Do provide your thoughts and ideas to achieve this.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Supress the psswd from ps in ksh/bash

I am running the ETL job to passing the database username,pssswd positional arguments to shell script (bash) and how can we suppress/hide the password from ps command. (2 Replies)
Discussion started by: pimmit22043
2 Replies

2. Shell Programming and Scripting

awk to supress error message with custom text

After a bash function is run the below file is produced: out_name.txt tab-delimeted Input Errors and warnings AccNo Genesymbol Variant Reference Sequence Start Descr. Coding DNA Descr. Protein Descr. GeneSymbol Coding DNA Descr. GeneSymbol Protein Descr. Genomic... (3 Replies)
Discussion started by: cmccabe
3 Replies

3. Shell Programming and Scripting

To Supress *

Hi Team , I want supress the meaning of * while passing it as parameter. I have file which contains file format and destination directory. let say abc* |/home/xyz I had function which will read these values and pass it to another function. Code looks like below func1 () {... (6 Replies)
Discussion started by: gvkumar25
6 Replies

4. Shell Programming and Scripting

AWk - supress warning

Hi, I am trying to run a script using awk and sed a few times. The script itself seems to work fine but in a final awk statement it throws up a warning: awk: warning: escape sequence `\.' treated as plain `.' script: ... (3 Replies)
Discussion started by: HugoDarley
3 Replies

5. Shell Programming and Scripting

supress error messages

Hi I have a script which connects to oracle using sqlplus if ! check_sqlplus "$ORACLE_SID" ; then echo "Unable to use sqlplus for sid $ORACLE_SID" return 1 else echo "attempting to connect to database" echo $ORACLE_HOME echo $ORACLE_SID echo "Status before entering... (2 Replies)
Discussion started by: xiamin
2 Replies

6. Shell Programming and Scripting

how to supress the trace

Hi I am working in ksh and getting the trace after trying to remove the file which in some cases does not exist: $ my_script loadfirm.dta.master: No such file or directory The code inside the script which produces this trace is the following: ] || rm ${FILE}.master >> /dev/null for... (3 Replies)
Discussion started by: aoussenko
3 Replies

7. UNIX for Advanced & Expert Users

Supress error message

Hi All this is a simple script #! /bin/bash FileCnt=`ls -lrt $DIR/* | wc -l` echo $FileCnt how could i escape the error msg if there are no files in $DIR ls: /home/sayantan/test/files/cnt/*: No such file or directory 0 Looking forward for a quick reply Regards, Newbie (2 Replies)
Discussion started by: newbie07
2 Replies

8. Shell Programming and Scripting

How do I supress certian output with find?

I am using this command find . -type f -mmin "+$t" > holder Unfortunatley that is also printing files that begin with a period. Such as .bash_history. What can I do to supress files that begin with a period? (1 Reply)
Discussion started by: chrchcol
1 Replies

9. UNIX for Advanced & Expert Users

Supress special chars in vi

Hi, One of our application is producing log files. But if we open the log file in vi or less or view mode, it shows all the special characters in it. The 'cat' shows correctly but it shows only last page. If I do 'cat' <file_name> | more, then again it shows special characters. ... (1 Reply)
Discussion started by: divakarp
1 Replies

10. UNIX for Dummies Questions & Answers

Supress screen output...

I need to suppress the output to the screen. I am appending to a file so do not need the output on the screen in the CLI environment. eg. cat $HOME/somefile >> $HOME/anotherfile I am doing this a number of times with SQL output files so I can look at the finished file not on the screen in the... (3 Replies)
Discussion started by: jagannatha
3 Replies
Login or Register to Ask a Question