Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  VBasic / vb.net / vbs / wsh
  Syntax überprüfen und Text markieren

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Syntax überprüfen und Text markieren (1506 mal gelesen)
Feyza
Mitglied



Sehen Sie sich das Profil von Feyza an!   Senden Sie eine Private Message an Feyza  Schreiben Sie einen Gästebucheintrag für Feyza

Beiträge: 605
Registriert: 12.01.2004

AutoCAD Mechanical 2014 / Windows Win7 / HP-UX / Oracle 10
VB6 / Visual Studio:NET2005 / .NET 2010 - Vb.net / Windows Server 2012, ASP.net

erstellt am: 20. Apr. 2015 12:58    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Zusammen,

habe folgendes Problem und hoffe, dass Ihr mir helfen könnt  

Ich hab eine Richtextbox und lese eine Textdatei ein.
Die Textdatei ist ein NC programm.

Wenn ich Werkzeug T, Drehzahl S, Vorschub F markieren möchte,
markiert er alles was er z.B. mit T, S oder F findet. (auch Kommnetare)

Ich möchte aber nur z.B. hier unten F mit Zahl markiert haben. z.B. F400


        Dim counterF As Integer
        Dim stringposF As Integer
        Dim re As Object
        re = CreateObject("vbscript.regexp")
        re.Pattern = "F\d{3}"

        Dim wordF As String = re.pattern

        For counterF = 1 To Me.RichTextBox1.TextLength
            stringposF = InStr(counterF, Me.RichTextBox1.Text, wordF, vbTextCompare)
            If stringposF > 0 Then
                Me.RichTextBox1.SelectionStart = stringposF - 1
                Me.RichTextBox1.SelectionLength = wordF.Length

                Me.RichTextBox1.SelectionColor = Color.Green
                Me.RichTextBox1.SelectionFont = New Font(RichTextBox1.SelectionFont, FontStyle.Bold)
            Else
                Exit For
            End If
        Next counterF

ich habe versucht mit dem Pattern dies umzusetzen. Glaube, dass ich hier einen Denkfehler habe.

Wäre super, wenn Ihr mir hier einen Tipp geben könntet.

Vielen Dank im Voraus!

------------------
Schöne Grüße
Feyza : )

[Diese Nachricht wurde von Feyza am 20. Apr. 2015 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bgrittmann
Ehrenmitglied V.I.P. h.c.
Konstrukteur


Sehen Sie sich das Profil von bgrittmann an!   Senden Sie eine Private Message an bgrittmann  Schreiben Sie einen Gästebucheintrag für bgrittmann

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 20. Apr. 2015 20:45    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Feyza 10 Unities + Antwort hilfreich

Servus
Musst du nicht die Suche gemäß des regulären Ausdrucks abwenden (Execute) und danach die Fundstellen auslesen/abarbeiten? (siehe zb hier)
Bei .net sollte es zb über die Methode "Matches" gehen (siehe zb hier)

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

KMassler
Ehrenmitglied V.I.P. h.c.
CAD Admin + Mädchen für Alles...



Sehen Sie sich das Profil von KMassler an!   Senden Sie eine Private Message an KMassler  Schreiben Sie einen Gästebucheintrag für KMassler

Beiträge: 2657
Registriert: 06.11.2000

erstellt am: 21. Apr. 2015 08:00    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Feyza 10 Unities + Antwort hilfreich

Für alle Nicht-NC-Programmierer wäre ein Beispieltext hilfreich.

------------------
Klaus

www.al-ko.com | mein Gästebuch

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Feyza
Mitglied



Sehen Sie sich das Profil von Feyza an!   Senden Sie eine Private Message an Feyza  Schreiben Sie einen Gästebucheintrag für Feyza

Beiträge: 605
Registriert: 12.01.2004

AutoCAD Mechanical 2014 / Windows Win7 / HP-UX / Oracle 10
VB6 / Visual Studio:NET2005 / .NET 2010 - Vb.net / Windows Server 2012, ASP.net

erstellt am: 21. Apr. 2015 08:06    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Guten Morgen Klaus,
Guten Morgen Bernd,

ein Beispiel   

%1000
(A.S: 02.04.2013/Tau)
N5 R47 0 M25 M92
N10 @00 15
M98
H250024
T2399 H100001 R47
H250002
T3400 H100003 R47
T525 H100004 R47
T1689 H100005 R47
T2680 H100006 R47 H250007
T493 H100008 R47
H250009 M99
N15 G92 D01 D123.35 P62.5
G92 D03 D173.42 P4.5
G92 D04 D142.39 P5.5
G92 D05 D161.000 P30

Er markiert auch die Kommentare, anstatt nur T mit zahlen.

------------------
Schöne Grüße
Feyza : )

[Diese Nachricht wurde von Feyza am 21. Apr. 2015 editiert.]

[Diese Nachricht wurde von Feyza am 21. Apr. 2015 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

HenryV
Mitglied
Konstrukteur, Engineering


Sehen Sie sich das Profil von HenryV an!   Senden Sie eine Private Message an HenryV  Schreiben Sie einen Gästebucheintrag für HenryV

Beiträge: 778
Registriert: 18.05.2005

SolidWorks 2020 x64 SP3.0
Dell Precision 5820
Intel Xeon W-2125 4x4GHz
NVIDIA Quadro P2000 5GB
32GB RAM
2x Dell U2412M, 24" TFT
Windows 10 Enterprise x64 21H1
Microsoft Office 365 ProPlus
Microsoft Visual Studio Enterprise 2022

erstellt am: 22. Apr. 2015 16:30    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Feyza 10 Unities + Antwort hilfreich

Hallo Feyza

Der Code für dein Fall könnte im VB.net so aussehen

Code:
Imports System.Text.RegularExpressions

Public Class Form1
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        'Beispielaufruf
        With RichTextBox1
            .Highlight("T\d+", Color.Green) 'Werkzeug
            .Highlight("S\d+", Color.Blue) 'Drehzahl
            .Highlight("F\d+\.?\d*", Color.Red) 'Vorschub
        End With
    End Sub
End Class

Module Zustatz
    <System.Runtime.CompilerServices.Extension()> _
    Public Sub Highlight(ByVal RTB As RichTextBox, ByVal pattern As String, ByVal Farbe As Color)
        'Such-Pattern zuweisen
        Dim RxObj As New Regex(pattern)
        'Regex-Suche ausführen
        Dim RxMatches As MatchCollection = RxObj.Matches(RTB.Text)
        'Resultate abarbeiten
        For Each RxMatch As System.Text.RegularExpressions.Match In RxMatches
            'Text markieren
            RTB.SelectionStart = RxMatch.Index
            RTB.SelectionLength = RxMatch.Value.Length
            'Text formatieren
            RTB.SelectionColor = Farbe
            RTB.SelectionFont = New Font(RTB.SelectionFont, FontStyle.Bold)
        Next
    End Sub
End Module


Online Regextester

https://regex101.com
Zum Testen von Regex mit Echtzeit-Debugging.

https://myregextester.com
Zum Testen von Regex mit VB.net-Codegenerierung.

Gruss Andreas

------------------
21 ist nur die halbe Antwort.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

KMassler
Ehrenmitglied V.I.P. h.c.
CAD Admin + Mädchen für Alles...



Sehen Sie sich das Profil von KMassler an!   Senden Sie eine Private Message an KMassler  Schreiben Sie einen Gästebucheintrag für KMassler

Beiträge: 2657
Registriert: 06.11.2000

erstellt am: 22. Apr. 2015 16:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Feyza 10 Unities + Antwort hilfreich

Coole Sache, auch wenn ich nur die Hälfte verstehe 

------------------
Klaus

www.al-ko.com | mein Gästebuch

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Feyza
Mitglied



Sehen Sie sich das Profil von Feyza an!   Senden Sie eine Private Message an Feyza  Schreiben Sie einen Gästebucheintrag für Feyza

Beiträge: 605
Registriert: 12.01.2004

AutoCAD Mechanical 2014 / Windows Win7 / HP-UX / Oracle 10
VB6 / Visual Studio:NET2005 / .NET 2010 - Vb.net / Windows Server 2012, ASP.net

erstellt am: 23. Apr. 2015 07:58    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Guten Morgen Zusammen  

@Andreas: Funktioniert super! Und der Vb.net Code Generator. WOW!
          Vielen Dank  

@Bernd und Klaus: Vielen Dank auch für Eure Hilfe  


------------------
Schöne Grüße
Feyza : )

[Diese Nachricht wurde von Feyza am 23. Apr. 2015 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz