473,320 Members | 1,946 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,320 software developers and data experts.

Regular Expression?


Hi,

I want to know how Regular Expression can be used in this situation.
I want to replace some string in specific condition..
The condition is to replace string only if the string is NOT inside of tag.

For example,
<Test id='wow'>wow</Test>
I want to replace the wow with great...So output will be
<Test id='wow'>great</Test>

As you know, if I just simply use 'wow' regular expression, it won't work...

Anybody knows what regular expression am I supposed to use?
Thanks,

Aug 1 '08 #1
3 1806
TJ <TJ@discussions.microsoft.comwrote:
I want to know how Regular Expression can be used in this situation.
I want to replace some string in specific condition..
The condition is to replace string only if the string is NOT inside of tag.

For example,
<Test id='wow'>wow</Test>
I want to replace the wow with great...So output will be
<Test id='wow'>great</Test>

As you know, if I just simply use 'wow' regular expression, it won't work...

Anybody knows what regular expression am I supposed to use?
Do you absolutely have to use a regular expression for this? Personally
I find that trying to work with XML using basic string handling is a
lot more error prone than using the XML APIs that are available. Is
there anything to stop you from iterating through all of the available
text nodes and just doing simple replacements within them?

--
Jon Skeet - <sk***@pobox.com>
Web site: http://www.pobox.com/~skeet
Blog: http://www.msmvps.com/jon.skeet
C# in Depth: http://csharpindepth.com
Aug 1 '08 #2
Hi,

Thanks for your reply.
That's also one option I think.

However, actually, the input string is not XML.
I just gave the example for simplication.

Actual input string is HTML. It could be whole HTML, or part of HTML.
The thing I want is that I want to replace some string, if the string is NOT
inside of tag.

For example,

<Img src='wow.jpg'>wow</img>

The output would be <Img src='wow.jpg'>great</img>

If you have any other idea other than regular expression, please share it
with us.

Thanks,


"Jon Skeet [C# MVP]" wrote:
TJ <TJ@discussions.microsoft.comwrote:
I want to know how Regular Expression can be used in this situation.
I want to replace some string in specific condition..
The condition is to replace string only if the string is NOT inside of tag.

For example,
<Test id='wow'>wow</Test>
I want to replace the wow with great...So output will be
<Test id='wow'>great</Test>

As you know, if I just simply use 'wow' regular expression, it won't work...

Anybody knows what regular expression am I supposed to use?

Do you absolutely have to use a regular expression for this? Personally
I find that trying to work with XML using basic string handling is a
lot more error prone than using the XML APIs that are available. Is
there anything to stop you from iterating through all of the available
text nodes and just doing simple replacements within them?

--
Jon Skeet - <sk***@pobox.com>
Web site: http://www.pobox.com/~skeet
Blog: http://www.msmvps.com/jon.skeet
C# in Depth: http://csharpindepth.com
Aug 1 '08 #3
TJ wrote:
Actual input string is HTML. It could be whole HTML, or part of HTML.
The thing I want is that I want to replace some string, if the string is NOT
inside of tag.
Regular expression examples for processing HTML are all over the web. Here's
the third hit I got from Google for "html regex tag", for example:
http://haacked.com/archive/2004/10/2...matchhtml.aspx

However, if you want to do it right and take into account things like
unclosed tags ("<br>"), mismatched tags and CDATA sections, a regex will not
help you (or else it'll be way too complicated to write); you'll need an
actual HTML parser. Google suggests there are multiple for .NET, some of
which might be useful.

--
J.
Aug 1 '08 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
by: Kenneth McDonald | last post by:
I'm working on the 0.8 release of my 'rex' module, and would appreciate feedback, suggestions, and criticism as I work towards finalizing the API and feature sets. rex is a module intended to make...
4
by: Buddy | last post by:
Can someone please show me how to create a regular expression to do the following My text is set to MyColumn{1, 100} Test I want a regular expression that sets the text to the following...
4
by: Neri | last post by:
Some document processing program I write has to deal with documents that have headers and footers that are unnecessary for the main processing part. Therefore, I'm using a regular expression to go...
11
by: Dimitris Georgakopuolos | last post by:
Hello, I have a text file that I load up to a string. The text includes certain expression like {firstName} or {userName} that I want to match and then replace with a new expression. However,...
3
by: James D. Marshall | last post by:
The issue at hand, I believe is my comprehension of using regular expression, specially to assist in replacing the expression with other text. using regular expression (\s*) my understanding is...
7
by: Billa | last post by:
Hi, I am replaceing a big string using different regular expressions (see some example at the end of the message). The problem is whenever I apply a "replace" it makes a new copy of string and I...
9
by: Pete Davis | last post by:
I'm using regular expressions to extract some data and some links from some web pages. I download the page and then I want to get a list of certain links. For building regular expressions, I use...
25
by: Mike | last post by:
I have a regular expression (^(.+)(?=\s*).*\1 ) that results in matches. I would like to get what the actual regular expression is. In other words, when I apply ^(.+)(?=\s*).*\1 to " HEART...
1
by: Allan Ebdrup | last post by:
I have a dynamic list of regular expressions, the expressions don't change very often but they can change. And I have a single string that I want to match the regular expressions against and find...
1
by: NvrBst | last post by:
I want to use the .replace() method with the regular expression /^ %VAR % =,($|&)/. The following DOESN'T replace the "^default.aspx=,($|&)" regular expression with "":...
0
by: ryjfgjl | last post by:
ExcelToDatabase: batch import excel into database automatically...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: jfyes | last post by:
As a hardware engineer, after seeing that CEIWEI recently released a new tool for Modbus RTU Over TCP/UDP filtering and monitoring, I actively went to its official website to take a look. It turned...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
0
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
0
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
by: af34tf | last post by:
Hi Guys, I have a domain whose name is BytesLimited.com, and I want to sell it. Does anyone know about platforms that allow me to list my domain in auction for free. Thank you
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.