|
I know this is a toughie, but I figured I'd ask...
I am writing an internal application for my company. We have thousands of Articles on our web server in HTML (actually ASP) format. These articles are technical in nature, and support the various software programs we write. This tool is meant to scan the text of those articles, and convert the information into a new format that we'll be storing in a database.
Part of that conversion process will include identifying the product and version that each article is associated with. This is really easy when the product name is spelled correctly and formatted the same as what I'd expect it to be. Unfortunately, people make mistakes (lots and lots of mistakes) and what I expect is rarely what is there. For a silly example, let's say that I'm scanning the text for the word "Microsoft" to see if this article is associated with a Microsoft product. Easy enough, right?
But as I start looking at articles, I see:
Micro Soft
Microssoft
Microsoff
MS
Microsucks
MSoft
..
..
Well, you get the idea. Doing a simple InStr(Article, "Microsoft") doesn't always find what I want. What I need is a more "fuzzy" compare method. Microsoft SQL Server has a function called LIKE that is kind of close to this - better yet, I can use the FreeText or Contains methods to provide a fuzzy search.
Is there a similar function or technique in VB that would allow me to do a compare like this?
-Todd Davis (toddhd@hotmail.com)
|
|
|
|
|
Not unless you write it.
I found a couple of resources on the 'Net about the subject just by searching for 'fuzzy string compare'.
You might want to try converting this[^] Delphi source. You also might want to try working something up using Regular Expressions. I don't have any code, but it's an idea I would look into.
RageInTheMachine9532
|
|
|
|
|
|
Try doing a SOUNDEX search - when people spell incorrectly, the word usually sounds the same - SOUNDEX creates a numeric value for a string based in its phonetics, so Smithe and Smythe would result in the same SOUNDEX value - believe SQL Server (and definately Oracle - ner!) support it straight out of the box...
"Now I guess I'll sit back and watch people misinterpret what I just said......"
Christian Graus At The Soapbox
|
|
|
|
|
Hello,
Does any one know how to make or where to get information on a menu like the properties menu in VS.net. I want to add the functionally to my program, on how it hides in tell you hover your mouse over the icon that is off to the right side and then it shows it self.
I hope that made sense
Dale Burmeister
|
|
|
|
|
Does clicking on the close button in the control box on a form raise an event? I would like the code I have for exiting using a menu to be executed if the close on the control box is clicked. Any ideas?
|
|
|
|
|
well you can handle this in queryunload event. It gives you an idea from where the unload event has been called.
I think rest is upto your logic. You can call the menu's click function. Or the better way is to create a common function and call it from different events.
Hope that is what you are looking for.
Ritesh.
|
|
|
|
|
I came across the following bit of code and was wondering why VB does not generate an error. strHTML is dimmed inside a loop that will execute multiple times.
I realise this pretty avaerage coding but wondered why/how VB allowed something like this.
For nCounter = 0 To objCodesLU.Count - 1
...
Dim strHTML As String
If blnSelected Then
strHTML = strHTML + "" + strValue
Else
strHTML = strHTML + "" + strValue
End If
blnSelected = False
Next
William
|
|
|
|
|
As per my understanding,
VB does not generate any error because every time it creates a separate reference to an string object and assign its address to strHTML.
Something like, initially one object is created having address 100 and assigned to strHTML. Next time when new object is created, it may have address 110 and it will be assigned to strHTML.
Hence there is no error. You can use messagebox and print the address of the variable.
I have not seen this practically. This is what I think.
Just trying to help you.
Ritesh.
|
|
|
|
|
Why would VB or VB.NET generate an error?
The only stipulation to using a variable is that it must be defined in the current scope or a parent scope. There are very few rules on WHERE you can use a Dim.
Dim used inside a loop just means that the variable that is defined can only be used inside that loop. Outside that loop, the variable doesn't exist. In your example, then code before the For statment and after the Next statement doesn't know anything about strHTML.
RageInTheMachine9532
|
|
|
|
|
How to apply the style sheet for crystal report in .net version for windows application.?Actually my need is to have multi lingual support for crystal report.But i cann't do it as like the window's forms.SO i decide to have style sheet so that the labels in crystal report can be generated with the style sheet value.Can i do like this or anybody have some other idea to get multilingual support in the crystal report.
Sriram
|
|
|
|
|
Hi friends,
In visual basic when a structure is declared, it does a padding between members so as to meet the memory boundry condition.
Now I would like to remove the padding by setting some complier option.
In VC++ this can be done by using
#pragma pack(1)
Is there any similar option in Visual Basic
Amar.
|
|
|
|
|
Your looking for the StructLayoutAttribute class. It has the Pack member that your looking for.
Something like this:
<StructLayout(LayoutKind.Sequential,Pack=1)> _
Public Structure EXAMPLE
Public dwWhoCares As Integer
Public ptMinSize As Point
Public ptMaxSize As Point
End Structure
RageInTheMachine9532
|
|
|
|
|
Hi Dave,
Thanks for the answer.
I guess the above code works for vb.net. I am working on VB 6.0, so please give me equivalent in VB 6.0.
Amar.
|
|
|
|
|
There is no equivalent in VB6...
RageInTheMachine9532
|
|
|
|
|
Am having a bit of a problem trying to retieve a DataRow from a DataGrid . The problem is that the DataGrid only exposes a CurrentRowIndex property for the selected row. The hassle with this is if the data is sorted at runtime by the grid, then the CurrentRowIndex does not correspond to the row in the grids DataSource (in this case a DataTable).
I could add a psudo column to the DataRow indicating its index in the DataTable . But then maintaining the index will be a nightmare, so I want to try avoid that approach.
I really cant believe they made a grid that cant retirieve a row!
Thnx
|
|
|
|
|
Hi! Greg Eales,
I think curent row in datasource (i.e. datatable or dataset) is the same as what you have selected in datagrid. So, do not have to look for any index or something like that.
Although, I am also a learner. So, I might be wrong. But, this is what I have experienced when I have bind datagrid with DataSet.
Ritesh.
|
|
|
|
|
Hi,
I am using VS.net and have a custom validator that shows an error if both text boxes are filled in. This is done server side but i now want it to also work client side. How would i do this, does anyone know?
I presume i use some sort of JS function, where does this go in the VS layout. Or is there another better way to do this altogether?
<br />
Protected Sub CustomValidator1_ServerValidate(ByVal source As System.Object, ByVal args As System.Web.UI.WebControls.ServerValidateEventArgs) Handles CustomValidator1.ServerValidate<br />
<br />
<br />
Dim Count As Integer<br />
<br />
If Len(txtName.Text) > 0 Then Count += 1<br />
<br />
If Len(txtName2.Text) > 0 Then Count += 1<br />
<br />
If Count <> 1 Then<br />
<br />
args.IsValid = False<br />
<br />
End If<br />
<br />
<br />
End Sub<br />
All help appreciated.
|
|
|
|
|
I'm trying to teach myself how to send data over a network and interact with an ASP. This isn't even introduced in any of the books I have, and any second step or intermediate level texts I've found haven't shed any light. Basically I just wanna know what the terms are that cover what I'm trying to do that I know what I'm looking for. Any books or webpages that could help would be a great help too.
e.g. C++ Windows Sockets are used to interact over a network with little effort. And I could be wrong but I think in years gone by (not sure if it's still relevant) but they used CDO and MAPI for sending emails and data??
|
|
|
|
|
Hi All,
The code below work if I don't add FieldInfo but I would like to assign all colums is text
Dim xlsApp As Excel.Application
Dim MyxlsBook As Excel.Workbook
xlsApp.Workbooks.OpenText(Filename:="D:\test.txt", StartRow:= _
1, DataType:=Excel.XlTextParsingType.xlDelimited, TextQualifier:=Excel.XlTextQualifier.xlTextQualifierNone, ConsecutiveDelimiter:= _
False, TAB:=False, Semicolon:=False, Comma:=False, Space:=False, Other _
:=True, OtherChar:="|")
I try to do as below but no luck:
xlsApp.Workbooks.OpenText(Filename:="D:\test.txt", StartRow:= _
1, DataType:=Excel.XlTextParsingType.xlDelimited, TextQualifier:=Excel.XlTextQualifier.xlTextQualifierNone, ConsecutiveDelimiter:= _
False, TAB:=False, Semicolon:=False, Comma:=False, Space:=False, Other _
:=True, OtherChar:="|", FieldInfo:= Array(Array(1, 2), Array(2, 2) )
it not except Array(Array(1, 2), Array(2, 2)
Thanks for your helps
Cheers,
Ben
|
|
|
|
|
Ok, so I've been using Visual Basic for about three days. I'm messing with a program that someone else wrote. It creates a tray icon and when you close the window, it just unloads the form, but the program is still running in the tray. There is a popup menu that should pop up when someone clicks the right mouse button on the tray icon. I haven't touched the original code that deals with this, but for some reason, it quit working. I've checked to make sure the menu was defined, and it is. And below is the code that should display the menu:
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
On Error GoTo ErrHandler
Dim Msg As Long
Dim sFilter As String
Msg = X / Screen.TwipsPerPixelX
Select Case Msg
Case WM_LBUTTONDBLCLK
On Error Resume Next
Me.WindowState = vbNormal
Me.Show
Case WM_RBUTTONUP
PopupMenu Me.mnuFile
End Select
Exit Sub
ErrHandler:
Call MakeLogFile("Form_MouseUp")
End Sub
I've seen this code in examples around the net, so it looks right, although I have no idea how "Msg = X / Screen.TwipsPerPixelX" gives you the message.
Asuming that this code is right, and the menu is defined...what are some reasons this wouldn't be working? By the way, I put a break point in the above function, and it never hits it...any ideas?
Thanks.
|
|
|
|
|
I have assigned a datagridstyle to my datagrid and it is not showing up. I have given the code below, any help is highly appreciated.
'Create Table
Dim dt As New DataTable("Category")
'Add Columns
Dim dc As DataColumn
dc = New DataColumn("Category", System.Type.GetType("System.String"))
dt.Columns.Add(dc)
dc = New DataColumn("Active", System.Type.GetType("System.Boolean"))
dt.Columns.Add(dc)
'Add Rows
Dim i% : For i = 0 To ds.Tables(11).Rows.Count - 1
Dim dr As DataRow
dr = dt.NewRow
dr("Category") = ds.Tables(11).Rows(i)(1)
dr("Active") = 1
dt.Rows.Add(dr)
Next
'Create Table Style
Dim ts As New DataGridTableStyle()
With ts
.RowHeadersVisible = False
.AllowSorting = False
.BackColor = Color.White
.AlternatingBackColor = Color.White
.HeaderBackColor = Color.FromArgb(115, 126, 183)
.HeaderForeColor = Color.White
.HeaderFont = New System.Drawing.Font("Arial", 9.0F, System.Drawing.FontStyle.Bold)
.GridLineColor = Color.DarkGray
.PreferredRowHeight = 22
End With
'Create Required Column Style (Category)
Dim column1 As New DataGridTextBoxColumn()
With column1
.MappingName = "Category"
.Width = 250
.Alignment = HorizontalAlignment.Left
.ReadOnly = False
End With
'Create Required Column Style (Active)
Dim column2 As New DataGridBoolColumn()
With column2
.MappingName = "Active"
.Width = 100
.Alignment = HorizontalAlignment.Center
.ReadOnly = False
End With
'Add column styles to table style
ts.GridColumnStyles.Add(column1)
ts.GridColumnStyles.Add(column2)
'Add tablestyle to Datagrid and customize
With dgCat
.TableStyles.Add(ts)
.DataSource = dt
.CaptionVisible = False
End With
Regards,
Muthu Annamalai
|
|
|
|
|
I think you have to map your style to your table name. In your case
ts.MappingName = "Category"
Hope it helps.
|
|
|
|
|
Thanks for your help
I have tried that and also I have called tablestyles.clear before assigning new style, but still it is not working
Regards,
Muthu Annamalai
|
|
|
|
|
afew years ago i made a guitar program in VB6 using midi instruments to produce the chords and notes for the guitar sounds.
i forget how to do this, and moreso, dont know how to do it in vb.net
can someone please lead me in the right direction on using midi instruments and how to produce certain notes with the selected instrument?
thank you.
if this is too vague let me know.
------------------------
Jordan.
III
|
|
|
|