Sponsored Content
Full Discussion: Match exactly a string
Top Forums Shell Programming and Scripting Match exactly a string Post 303000035 by prohank on Monday 3rd of July 2017 08:43:30 AM
Old 07-03-2017
Match exactly a string

I am formatting my code and for that I am trying to write a script which can quicken some repetitive work.

I need to match "==" exactly in a string and replace it by inserting a (single) blank space before and after it.


Sample Strings:

1.
Code:
this.something    =='something'.that

2.
Code:
this.something    == 'something'.that

3.
Code:
this.something=='something'.that

4.
Code:
this.something    ==    'something'.that

5.
Code:
this.something== 'something'.that

Expected Output:

1.
Code:
this.something == 'something'.that


My expression:
Code:
(\w+)\s*(==)\s*(['"]?\w+["']?)

works fine when there's only "==" between two statements but it fails when when it encounters "===". It matches the "==" in "===" and produces output as:

Code:
this.something == =something.that

something that I don't want.

What's confusing me is that the above code seems to work fine for me in Notepad++ but doesn't work in grep/sed etc. Somehow I just feel that I must be doing something silly.

Please provide your suggestions.

Thanks.

Last edited by prohank; 07-04-2017 at 08:08 AM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Perl: Better way to match string within a string

Hi, I'm trying to get one field out of many as follows: A string of multiple fields separated with "/" characters: "/ab=12/cd=34/12=ab/34=cd/ef=pick-this.one/gh=blah/ij=something/" I want to pick up the field "ef=pick-this.one" which has no regular pattern except it starts with "ef=xxxx"... (3 Replies)
Discussion started by: Juha
3 Replies

2. Shell Programming and Scripting

exact string match ; search and print match

I am trying to match a pattern exactly in a shell script. I have tried two methods awk '/\<mpath${CURR_MP}\>/{print $1 $2}' multipath perl -ne '/\bmpath${CURR_MP}\b/ and print' /var/tmp/multipath Both these methods require that I use the escape character. I am guessing that is why... (8 Replies)
Discussion started by: bash_in_my_head
8 Replies

3. UNIX for Dummies Questions & Answers

How do mask off the string that match my value?

Hi, I have a file like following, aaabb aaavv bbdddaaab fgdgjhaa bfd 12352aa dgs1xaf sdgsdyg4 How can i get the output below(mask off all the line that have "a") by using vim #aaabb #aaavv #bbdddaaab #fgdgjhaa bfd #12352aa (4 Replies)
Discussion started by: 793589
4 Replies

4. Shell Programming and Scripting

pattern match in a string

Hello, Please see below line code: #!/bin/ksh set -x /usr/bin/cat /home/temp |while read line do if ] then echo "matched" else echo "nope" fi done content of filr temp is as below (4 Replies)
Discussion started by: skhichi
4 Replies

5. Shell Programming and Scripting

How can I match the particular character in the string?

Hi, I want to check out a word in the text file and generate a clear report for me to see... The text file content: Content: ............ 20120608: 20120608: ............ 20120608: .......... 2012031201: , hime] End of the file My expected output is: Full TXT: manatsu TXT:... (3 Replies)
Discussion started by: meroko
3 Replies

6. Shell Programming and Scripting

How to print everything after a string match

Hi all, I'm trying to do some work on the authorized_keys file to do a check if there's any information after the hash key.. At the end of the hash key's in the file, there can be an = or == Is there a way to check if anything exists after these equals and if so print it out or else print... (2 Replies)
Discussion started by: Jazmania
2 Replies

7. Shell Programming and Scripting

Match a string but with little difference

I want to output the records matched with a string like "abcdefg", but with one letter difference at any position. Can I do this with awk or grep? Thank you! (1 Reply)
Discussion started by: xshang
1 Replies

8. Shell Programming and Scripting

awk : match the string and string with the quotes :

Hi all, Here is the data file: - want to match only lan3 in the output . - not lan3:1 file : OPERATING_SYSTEM=HP-UX LOOPBACK_ADDRESS=127.0.0.1 INTERFACE_NAME="lan3" IP_ADDRESS="10.53.52.241" SUBNET_MASK="255.255.255.192" BROADCAST_ADDRESS="" INTERFACE_STATE=""... (2 Replies)
Discussion started by: rveri
2 Replies

9. Shell Programming and Scripting

Get the exact match of the string!

Hi All, I am breaking my head in trying to get a command that will exactly match my given string. I have searched net and found few of the options - grep -F $string file grep -x $string file grep "^${string}$" file awk '/"${string}"/ {print $0}' file strangely nothing seems to... (3 Replies)
Discussion started by: dips_ag
3 Replies

10. Shell Programming and Scripting

Help match the exact string

I just want to match "binutils1_test" only, and print the match line only lyang001@lyang001-OptiPlex-9010:/tmp$ cat file zbinutils1_test bbinutils1_test binutils1_test w-binutils1_test lyang001@lyang001-OptiPlex-9010:/tmp$ cat file |grep -w 'binutils1_test' ... (7 Replies)
Discussion started by: yanglei_fage
7 Replies
PPI::Token::Regexp::Match(3)				User Contributed Perl Documentation			      PPI::Token::Regexp::Match(3)

NAME
PPI::Token::Regexp::Match - A standard pattern match regex INHERITANCE
PPI::Token::Regexp::Match isa PPI::Token::Regexp isa PPI::Token isa PPI::Element SYNOPSIS
$text =~ m/match regexp/; $text =~ /match regexp/; DESCRIPTION
A "PPI::Token::Regexp::Match" object represents a single match regular expression. Just to be doubly clear, here are things that are and aren't considered a match regexp. # Is a match regexp /This is a match regexp/; m/Old McDonald had a farm/eieio; # These are NOT match regexp qr/This is a regexp quote-like operator/; s/This is a/replace regexp/; METHODS
There are no methods available for "PPI::Token::Regexp::Match" beyond those provided by the parent PPI::Token::Regexp, PPI::Token and PPI::Element classes. Got any ideas for methods? Submit a report to rt.cpan.org! SUPPORT
See the support section in the main module. AUTHOR
Adam Kennedy <adamk@cpan.org> COPYRIGHT
Copyright 2001 - 2011 Adam Kennedy. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of the license can be found in the LICENSE file included with this module. perl v5.18.2 2011-02-25 PPI::Token::Regexp::Match(3)
All times are GMT -4. The time now is 11:44 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy