Kopiowanie tekstu znajdującego się w klamrach/nawiasach vb.net

0

Cześć,

Potrzebuję podpowiedzi, w jaki sposób można pobierać wartość ze zmieniającego się ciągu znaków mając występujący np. nawias?
Przy stałej ilości znaków używam metody Mid, niestety długość ciągu oraz wartość z nawiasu się zmienia więc to się nie sprawdza w 100%.

Przykład: abcdefghijkl......: 1234567891234560/30000000000 (0.01234)
Obecnie używam czegoś takiego:

TextBox1.Text = (Mid(TextBox2.text), 46, 15)).TrimStart("0", " ")

Ale w zostaje mi wartość + nawiasy, a nawiasów nie potrzebuję. Gdy użyję TrimStart z "(" to zjada mi pierwsze 0 za nawiasem.

Jak zrobić to lepiej? Może jest opcja w stylu: znajdź nawias i skopiuj zawartość?

1

tak na szybko:

tekst = "4567891234560/30000000000 (0.01234)"
lewyNawias = InStr(1, tekst, "(", 1)
prawyNawias = InStrRev(tekst, ")", -1) - 1
gotowy = Mid(tekst, lewyNawias + 1, prawyNawias - lewyNawias)
MsgBox gotowy
1

Zwykle (zwłaszcza jednolinijkowe) stringi się rozbiera wyrazeniami regularnymi.

A tym konkretnym przypadku intuicja mi mówi, ze być może rozwiązujemy niewłaściwy problem, string ewidentnie pochodzi z jakiego oprogramowania, gdybym to ja robił, usilnie bym popracował, aby tam się wspawać.

0

@detor Dziękuję, nie pomyślałem o takim prostym rozwiązaniu, oczywiście działa :)
@ZrobieDobrze Masz rację, niestety moje obecne umiejętności programowania nie pozwolą na wpięcie się w response innej apki, może za jakiś czas ;)

Dziękuję za odpowiedzi i poświęcony czas.
Pozdrawiam

1 użytkowników online, w tym zalogowanych: 0, gości: 1