Nhờ giúp tách lấy số trong chuổi
Moderators: tungblt, vuathongtin
-
- Thành viên ưu tú
- Posts: 551
- Joined: Fri 26/11/2010 1:15 pm
- Location: TP.HCM
- Has thanked: 190 times
- Been thanked: 36 times
- Contact:
Nhờ giúp tách lấy số trong chuổi
Nhờ các bạn chỉ giúp :
Giả sử mình có chuổi : "BH00123" hoặc "BH0123N" hoặc "B123NH0" hoặc "1234567" hoặc "0001234" ==> nói chung là 1 chuỗi gồm số không theo quy luật nào cả.
Vậy có hàm nào lấy được các số trong các chuổi trên không
Làm thế nào để có dc kết quả như sau :
"BH00123" = 123
"BH0123N" =123
"B123NH0" =1230
"1234567" =1234567
"0001234" =1234
Mong đựoc giúp đỡ. Xin cảm ơn
Giả sử mình có chuổi : "BH00123" hoặc "BH0123N" hoặc "B123NH0" hoặc "1234567" hoặc "0001234" ==> nói chung là 1 chuỗi gồm số không theo quy luật nào cả.
Vậy có hàm nào lấy được các số trong các chuổi trên không
Làm thế nào để có dc kết quả như sau :
"BH00123" = 123
"BH0123N" =123
"B123NH0" =1230
"1234567" =1234567
"0001234" =1234
Mong đựoc giúp đỡ. Xin cảm ơn
- xuanha
- Guru
- Posts: 1230
- Joined: Thu 19/08/2010 4:25 pm
- Location: Ban Tổ chức Thành uỷ Hưng Yên, tỉnh Hưng Yên
- Has thanked: 13 times
- Been thanked: 374 times
- Contact:
Re: Nhờ giúp tách lấy số trong chuổi
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- TextBox2.Text = Tachso(TextBox1.Text)
- End Sub
- Private Function Tachso(ByVal x As String) As String
- Dim i% Dim xau$ = ""
- For i = 1 To x.Length
- If IsNumeric(Mid(x, i, 1)) Then xau = xau & Mid(x, i, 1)
- Next
- Tachso = xau
- End Function
Kiểm phiếu Đại hội Đoàn, Đại hội Đảng
http://caulacbovb.com/forum/viewtopic.php?t=23599
http://caulacbovb.com/forum/viewtopic.php?t=23599
- vuathongtin
- Điều hành viên
- Posts: 1028
- Joined: Sun 02/05/2010 10:03 pm
- Location: Xứ sở DG
- Has thanked: 2 times
- Been thanked: 105 times
- Contact:
Re: Nhờ giúp tách lấy số trong chuổi
Cách 2: Dùng Regular Expression
(Sơ lược lý thuyết: \d : ký tự chữ số tương đương [0-9] ; \D : ký tự ko phải chữ số)
B1: Nhúng thư viện: Imports System.Text.RegularExpressions
B2:
(Sơ lược lý thuyết: \d : ký tự chữ số tương đương [0-9] ; \D : ký tự ko phải chữ số)
B1: Nhúng thư viện: Imports System.Text.RegularExpressions
B2:
- Public Function loclayso(ByVal chuoi As String) As String
- Dim myRegex As Regex = New Regex("\D") Dim Result = ""
- For Each subString As String In myRegex.Split(chuoi)
- Result += subString
- Next
- Return Result
- End Function
Bùi Thành Nhân
* Chuyên gia MMO
congtacvien.online
* Chuyên gia MMO
congtacvien.online
Re: Nhờ giúp tách lấy số trong chuổi
Anh Xuanha và Vuathongtin cùng các Pro giúp em về phần tách số trong chuỗi với:
Vấn đề của em là: hiện đang có một chuỗi trong RichtextBox dạng : ND123 AC4054 15/10/2012...
Bây giờ cần lọc ra nhóm số sau ND (tức 123) đưa vào textbox1
lọc nhóm số sau AC (tức 4054) đưa vào textbox2
các số khác không quan tâm.
Em đã tìm hiểu các bài về tách số trong chuỗi trên diễn đãn nhưng vẫn bó tay
Mong các Pro giúp.
Vấn đề của em là: hiện đang có một chuỗi trong RichtextBox dạng : ND123 AC4054 15/10/2012...
Bây giờ cần lọc ra nhóm số sau ND (tức 123) đưa vào textbox1
lọc nhóm số sau AC (tức 4054) đưa vào textbox2
các số khác không quan tâm.
Em đã tìm hiểu các bài về tách số trong chuỗi trên diễn đãn nhưng vẫn bó tay

Mong các Pro giúp.
- xuanquy_th
- Guru
- Posts: 803
- Joined: Tue 05/08/2008 9:15 pm
- Location: Thanh Hoá
- Has thanked: 1 time
- Been thanked: 10 times
- Contact:
Re: Nhờ giúp tách lấy số trong chuổi
- Dim s() As String = "ND123 AC4054 15/10/2012".Split(" ")
- TextBox1.Text = s(0).Replace("ND", "")
- TextBox2.Text = s(1).Replace("AC", "")
Khi Chúa Trời đóng cánh cửa này lại, Ngài sẽ mở một cánh cửa khác cho ta.
Nhưng ta thường nhìn quá lâu vào cánh cửa đã đóng nên không thấy được có một cánh cửa khác đang mở ra cho ta!!!
Nhưng ta thường nhìn quá lâu vào cánh cửa đã đóng nên không thấy được có một cánh cửa khác đang mở ra cho ta!!!
Re: Nhờ giúp tách lấy số trong chuổi
Cảm ơn bác xuanquy_th nhé.
sao thấy đơn giản thế, để thử xem thế nào...
sao thấy đơn giản thế, để thử xem thế nào...
-
- Posts: 3
- Joined: Thu 01/08/2013 3:20 pm
- Has thanked: 1 time
Re: Nhờ giúp tách lấy số trong chuổi
em co van de nay rat can a giup do: e co chuoi "gh78.9h" tach ra la 78.9 a giup e voi!
- 1045007
- Thành viên danh dự
- Posts: 551
- Joined: Mon 09/06/2008 3:35 pm
- Location: TP Cần Thơ
- Has thanked: 2 times
- Been thanked: 61 times
- Contact:
Re: Nhờ giúp tách lấy số trong chuổi
minhsonx87 wrote:em co van de nay rat can a giup do: e co chuoi "gh78.9h" tach ra la 78.9 a giup e voi!
- String number = Regex.Match("gh78.9h", @"\d+\.\d+").Value;
Xếp hình cổ điển for Android-https://play.google.com
♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀
♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀♂♀
-
- Thành viên chính thức
- Posts: 32
- Joined: Sat 04/07/2009 5:50 pm
- Has thanked: 2 times
- Been thanked: 6 times
Re: Nhờ giúp tách lấy số trong chuổi
Update ham chay duoc so nguyen va so thuc
Code: Select all
Function TachSoThapPhan(ChuoiSo As String) As Double
Dim ViTriDau, ViTriCuoi As Integer
ViTriDau = 0
ViTriCuoi = 0
For i As Integer = 0 To Len(ChuoiSo)
If ViTriDau = 0 Then
If IsNumeric(ChuoiSo(i)) = True Then
ViTriDau = i
End If
Else
If IsNumeric(ChuoiSo(i)) = False And ChuoiSo(i) <> "." Then
ViTriCuoi = i
Exit For
End If
End If
Next
TachSoThapPhan = Microsoft.VisualBasic.Mid(ChuoiSo, ViTriDau + 1, ViTriCuoi - ViTriDau)
End Function