perl negating Regular Expression


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting perl negating Regular Expression
# 1  
Old 03-10-2009
Computer perl negating Regular Expression

hi all,

I have this particular piece of code

Code:
perl -pi -e 's#\&amp\;(\w\W*\w+\;)#\&$1#gm' filename.txt


the
Code:
(\w\W*\w+\;)

part should not contain an "&".

That means that if a string like &xxxxx&ecute; comes i wount be replacing the amp;.


thanks
Jathin

Last edited by Franklin52; 03-10-2009 at 07:33 AM.. Reason: adding code tags
# 2  
Old 03-10-2009
If I understand correctly:

Code:
(\w[^A-Za-z0-9_&]*\w+\;)

# 3  
Old 03-10-2009
i am a beginner in unix,

so just want to reconfirm what that code will do.

can you give a few line explanation.
# 4  
Old 03-10-2009
You said:

Quote:
the
Code:
(\w\W*\w+\)

part should not contain an "&".
As far as the regular expression above is concerned only the \W shorthand character class may contain the mentioned character. So, a possible solution is to use the extended class including the & character:

\W is short for [^\w]. \w is short for [A-Za-z0-9_]. So we end up with [^A-Za-z0-9_&].
# 5  
Old 03-10-2009
oh sorry.

I wanted to re iterate the requirement.

the present code is (\w\W*\w+\)

will remove the string "amp;" in the &xxxxx&ecute; even if the xxxxx is a part of \w* or \W*.

now the requirement is to change the code in such a way that if the xxxxx contains an &. the amp; must not be removed else the amp; must be removed.
# 6  
Old 03-10-2009
I cannot understand. I get this with your code:

Code:
% perl -pe 's#\&amp\;(\w\W*\w+\;)#\&$1#g' <<<'&amp;xxxxx&ecute;'
&amp;xxxxx&ecute;


Could you post a sample of your input file and an example of the desired output?
# 7  
Old 03-10-2009
the sample input

<p>A policy insight into the R&amp;D patent relationshi&amp;ecute;p</p>


expected output
<p>A policy insight into the R&amp;D patent relationshi&ecute;p</p>


but the present code generates

<p>A policy insight into the R&D patent relationshi&ecute;p</p>
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Perl regular expression

Hi , I have the below array my @actionText = ("delivered to governor on 21/23/3345" , "deliver jllj" , "ram 2345/43"); When i am trying to grep the contents of array and if mathced substituting with the digitis or some date format from the element like below my @action = grep { $_ =~... (7 Replies)
Discussion started by: ragilla
7 Replies

2. Programming

Perl: How to read from a file, do regular expression and then replace the found regular expression

Hi all, How am I read a file, find the match regular expression and overwrite to the same files. open DESTINATION_FILE, "<tmptravl.dat" or die "tmptravl.dat"; open NEW_DESTINATION_FILE, ">new_tmptravl.dat" or die "new_tmptravl.dat"; while (<DESTINATION_FILE>) { # print... (1 Reply)
Discussion started by: jessy83
1 Replies

3. Shell Programming and Scripting

Perl regular expression help!

Hi I am doing something basic like... if ($stringvariable =~ /have not typed/) I have a little problem because the 'not' in the expression gets highlighted as a kind of a '!'..what am I supposed to do in this situation? Thank you ---------- Post updated at 03:24 PM ----------... (1 Reply)
Discussion started by: vas28r13
1 Replies

4. Shell Programming and Scripting

Hidden Characters in Regular Expression Matching Perl - Perl Newbie

I am completely new to perl programming. My father is helping me learn said programming language. However, I am stuck on one of the assignments he has given me, and I can't find very much help with it via google, either because I have a tiny attention span, or because I can be very very dense. ... (4 Replies)
Discussion started by: kittyluva2
4 Replies

5. Shell Programming and Scripting

Perl Regular Expression

Hello, I am trying to use perl LWP module to read and get a specfic URL page. The issue is that the URL ends with the data and time and time is not consistent it changes all the time. if anyone could help me how to write a regular expressin that would work in the LWP::UserAgent get function to... (0 Replies)
Discussion started by: bataf
0 Replies

6. Shell Programming and Scripting

Need perl regular expression

Hi, I am looking for a Perl regular expression to match the below pattern of a java script file. var so = object.device.load('camera','value'); I want to grep out such lines present in the *.js files. The conditions are: a) the line may start with blank space(s) b) always the... (3 Replies)
Discussion started by: royalibrahim
3 Replies

7. Shell Programming and Scripting

Regular expression in Perl

Hi, I need and expression for a word like abc_xyz_ykklm The expresion should indicate that the word starts with abc and end with ykklm but does not contain xyz string in the middle. Example: abc_tmn_ykklm is ok and abc_xyz_ykklm is not Ok. Please help. Regards. (1 Reply)
Discussion started by: asth
1 Replies

8. Shell Programming and Scripting

perl regular expression

Dear all, I have a simple issue on a perl regular expression. I want to get the characters in red from the next lines : POWER_key LEFT_key RIGHT_key OK_key DOWN_key and so on... Thanks in advance for reply. Ludo (1 Reply)
Discussion started by: lsaas
1 Replies

9. Shell Programming and Scripting

regular expression in perl

hi, i want to extract the sessionID from this line. QnA Session Id : here the output should be-- QnA_SessionID=128589 Thanks NT (3 Replies)
Discussion started by: namishtiwari
3 Replies

10. Shell Programming and Scripting

perl regular expression

letz say that my file has 7 records with only one field. So my file has: 11111111 000000000000000 1111 aaaabbbccc 1111111222000000 aaaaaaaa zz All i need is: 1. when the field has a repetition of the same instance(a-z or 0-9), i would consideer it to be invalid.... (1 Reply)
Discussion started by: helengoldman
1 Replies
Login or Register to Ask a Question