Regex - Capture The Repeating Data Using A Regular Expression In .Net?
Feb 7, 2011
I'm trying to find the right RegEx to capture some (potentially) repeating data. I don't know how many times it will repeat. If I give an exanple of the data and what I want to capture can anyone point me in the right direction? It's the .Net regex engine (Visual Basic)
I have written code to pull some data into a data table and do some data re-formatting. I need some help splitting some text into appropriate columns.
CASE 1
I have data formated like this that I need to split into 2 columns.
[Code]...
column is the first 11 characters That is easy.column 2 should contain all the text after the first 11 characters up to but not including the first number.The last column is all the text after column 2
My coworker needs me to write him a regular expression for his vb.net app.I do not know vb and he does not know regex.The regex he needs is:/.*web id: ?(d+).*/iBasically he needs to search a string for something like "web id: 345" or "web id:2534" and retrieve the ID.He took what I gave him above and was able to put this together:
Dim strPattern As String = ".*web id: ?(d+).*" Dim strReplacement$ = "$1" GetWebId$ = Regex.Replace(LCase$(strNote$), strPattern$, strReplacement$)
I want regular expression validator for my telephone field in VB.net. Telephone format should be (+)xx-(0)xxxx-xxxxxx ext xxxx (Optional) example my number would appear as 44-7966-591739 Screen would be formatted to show +44-(0)7966-591739 ext?
I'm trying to type a regular expression that follows the following format: [URL] There are no special characters or numbers permitted for this criteria. I thought I had it down, but I'm a bit rusty with regular expressions and when I tested mine, it failed all across the boards. So far, my regular is expression is:
I need a regular expression that requires at least ONE digits and SIX maximum. I've worked out this, but neither of them seems to work. ^[0-9][0-9]?[0-9]?[0-9]?[0-9]?[0-9]?$ ^[0-999999]$
It seems up until now I've never used Regex, nor even heard of it. But once I did I realized how extremely useful this is. Having said, it's been 2 days since I've began looking into constructing my own patterns. My most recent being for decimals. Is the pattern I provided below "proper"? and are there also any improvements I could be making for a more efficient patter, which would minimize any possibility of a loophole? [code] So for my use, this is doing what it's supposed to being doing under every test I can through at it. But do mind the 0. and .0, I have a function to normalize these as they are proper, I just pad the left and right accordingly. I found most regex questions asked here..and yes I am doing this in vb.net so it fits. If not, then feel free to move this post somewhere else better suited for the topic of discussion.
This is a related to a previous question I have asked here, see the link below for a brief description as to why I am trying to do this.Regular expression from font to span (size and colour) and back (VB.NET).Basically I need a regex replace function (or if this can be done in pure VB then that's fine) to convert all ul tags in a string to textindent tags, with a different attribute value for the first textindent tag.For example:
<ul> <li>This is some text</li> <li>This is some more text</li>[code].....
Basically I want the first ul tag to have no indenting, but all nested ul tags to have an indent of 20.
I know it may be quite easily for you. i have a text which contains 40 lines, I want to remove lines which starts with a constant text. check below data.
When I used (?mn)[+CMGL:].*($) it removes the whole text , when I use (?mn)[+CMGL:].*( ) , it only leaves the first line. +CMGL: 0,1,,159 07910201956905F0440B910201532762F20008709021225282808 +CMGL: 1,1,,159
I'm using Visual Basic 2010 Express to edit an XML file. I want to replace items that have (typically) non-zero floating point numbers with a single zero.
I am pretty good with perl regular expressions but evidently I am at a loss on why this doesn't work.The code below stores "Person Test" in output variable.
im output As String Dim userName As String = "Test, Person" Dim re As New Regex("(w+),s(w+)", RegexOptions.Singleline) output = re.Replace(userName, "$2 $1")
So why doesn't the following code store "#Test##Person#" in output variable.
Dim output As String Dim userName As String = "Test, Person" Dim re As New Regex("(w+),s(w+)") For Each Match As Match In re.Matches(userName) output &= "#" & Match.ToString & "#" Next
I'm trying to replace all the carriage return characters in a string obtained from a multi line text box in a Windows Form with the string ", <BR>" so that when I use the string in some HTML it displays correctly.
Function Blah(ByVal strInput As String) As String Dim rexCR As Object rexCR = CreateObject("VBScript.RegExp")
I'm trying to parse csv file with VB.NET.csv files contains value like 0,"1,2,3",4 which splits in 5 instead of 3. There are many examples with other languages in Stockoverflow but I can't implement it in VB.NET.Here is my code so far but it doesn't work...
Dim t As String() = Regex.Split(str(i), ",(?=([^""]*""[^""]*"")*[^""]*$)")
I'm having trouble trying to find the best method to do what I'm needing.
I'm thinking of using a regular expression to read a .txt file and parse out the MAC id information that will be in the text file. I was wondering if there was an easier way to do it or what the best way to do this is.
readall(textfile) macID = d{1, 4}.d{1, 4}.d{1, 4} totalMacInfo = all the macs in the text file?
If you guys have an alternative solution or a good way to write out the code I am open to suggestions. Not exactly sure how best to mix the expression into reading a txt file to get the data i need.
I have a regular expression that I use to grab data between two sets of id's for example: <CLASSCOD>70</CLASSCOD> The regular expression I use is: (?<=<CLASSCOD>)(?:[^<]|<(?!/CLASSCOD))* Which works in most case but when I have a single value like this <CLASSCOD>N</CLASSCOD> It says there are no matches.
The whole data string looks like this : <STATUS>PRESOL</STATUS> <DATE>0601</DATE> <YEAR>11</YEAR> <AGENCY>Department of the Interior</AGENCY> <OFFICE>Bureau of Indian Affairs</OFFICE> [Code] .....
The following works in vb.net, and basically only allows characters on a standard US Keyboard. Any other character pasted gets deleted. I use the following regular expression code:
I'm trying to create a regex which will match either one of the following [code] This regex is supposed to return all and any form of the function that is used.If match string were - FVAL(A,"B")+5 then match group should be FVAL(A,"B")
I can get it to work in VB.NET but not C#. I can't figure out why it works in one but not the other.
[Code]...
As far as I can tell the patterns are identical in both languages with escaping. When I run the VB code I get a match. When I run the C# code I get nothing.
I have just coded the below regular expression. I have a mini rich text editor on a web page (very similar to the one I am using to post this question) and I want to make use of a double asterisk to indicate which words/phrases should be wrapped in a strong tag. The aim is to allow the user to add pre-defined HTML elements without actually having to submit HTML. [code...]
Maybe I am over-optimising this, but I want to know if this can be made more efficient?
It is a little like a search and replace, I want to replace any string that contains any substring in parentheses with the same string but the words in parentheses colored RED: Eg
Take this text in TextBox1:
"The Prime Minister (that idiot from Scotland) made a speech today"
and convert to this text in RichTextBox1:
"The Prime Minister (that idiot from Scotland) made a speech today"
I am trying to use regular expression for extracting data from web page. but everytime i change the URL i need to change my regular expression for URL.
I have the following function that I am using to remove the characters �4 and nulls from my xmlString but I can't find what do I need to change to avoid removing the from my ending tags. This is what I get when I run this function