By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
434,696 Members | 1,422 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 434,696 IT Pros & Developers. It's quick & easy.

Regular Expressions

P: n/a
Hi,

I have several regular expressions that I need to run against
documents. Is it possible to combine several expressions in one
expression in Regex object. So that it is faster, or will I have to
use all the expressions seperately?

Here are my regular expressions that check for valid email address and
link
Dim Expression As String =
"([\w\-]+\.)*[\w\-]+@([\w\-]+\.)+([\w\-]{2,5})"
EmailRegex = New Regex(Expression, RegexOptions.IgnoreCase Or
RegexOptions.Compiled)

Dim HrefPattern As String =
"href\s*=\s*(?:""(?<match>[^""]*)""|(?<match>\S+))"
HrefRegex = New Regex(HrefPattern, RegexOptions.IgnoreCase Or
RegexOptions.Compiled)

so can I combine both regular expressions in one?

Thanks
Nov 20 '05 #1
Share this Question
Share on Google+
2 Replies


P: n/a
Sehboo,
Using Alternation you can combine regular expressions.

Dim regex As New Regex(Expression & "|" & HrefPattern,
RegexOptions.IgnoreCase Or
RegexOptions.Compiled)
You may want to also use a grouping construct with a name so you know which
expression you matched...

Also you may want to use Match & NextMatch to walk the matches found,
however I do not have a good example of this...
I find both of the following sites invaluable when working with regular
expressions.

A tutorial & reference on using regular expressions:
http://www.regular-expressions.info/

The MSDN's documentation on regular expressions:
http://msdn.microsoft.com/library/de...geElements.asp

Hope this helps
Jay

"Sehboo" <ma*********@hotmail.com> wrote in message
news:7b**************************@posting.google.c om... Hi,

I have several regular expressions that I need to run against
documents. Is it possible to combine several expressions in one
expression in Regex object. So that it is faster, or will I have to
use all the expressions seperately?

Here are my regular expressions that check for valid email address and
link
Dim Expression As String =
"([\w\-]+\.)*[\w\-]+@([\w\-]+\.)+([\w\-]{2,5})"
EmailRegex = New Regex(Expression, RegexOptions.IgnoreCase Or
RegexOptions.Compiled)

Dim HrefPattern As String =
"href\s*=\s*(?:""(?<match>[^""]*)""|(?<match>\S+))"
HrefRegex = New Regex(HrefPattern, RegexOptions.IgnoreCase Or
RegexOptions.Compiled)

so can I combine both regular expressions in one?

Thanks

Nov 20 '05 #2

P: n/a
Sehboo,
Using Alternation you can combine regular expressions.

Dim regex As New Regex(Expression & "|" & HrefPattern,
RegexOptions.IgnoreCase Or
RegexOptions.Compiled)
You may want to also use a grouping construct with a name so you know which
expression you matched...

Also you may want to use Match & NextMatch to walk the matches found,
however I do not have a good example of this...
I find both of the following sites invaluable when working with regular
expressions.

A tutorial & reference on using regular expressions:
http://www.regular-expressions.info/

The MSDN's documentation on regular expressions:
http://msdn.microsoft.com/library/de...geElements.asp

Hope this helps
Jay

"Sehboo" <ma*********@hotmail.com> wrote in message
news:7b**************************@posting.google.c om... Hi,

I have several regular expressions that I need to run against
documents. Is it possible to combine several expressions in one
expression in Regex object. So that it is faster, or will I have to
use all the expressions seperately?

Here are my regular expressions that check for valid email address and
link
Dim Expression As String =
"([\w\-]+\.)*[\w\-]+@([\w\-]+\.)+([\w\-]{2,5})"
EmailRegex = New Regex(Expression, RegexOptions.IgnoreCase Or
RegexOptions.Compiled)

Dim HrefPattern As String =
"href\s*=\s*(?:""(?<match>[^""]*)""|(?<match>\S+))"
HrefRegex = New Regex(HrefPattern, RegexOptions.IgnoreCase Or
RegexOptions.Compiled)

so can I combine both regular expressions in one?

Thanks

Nov 20 '05 #3

This discussion thread is closed

Replies have been disabled for this discussion.