5
Tôi muốn khớp (trong đoạn này) mọi thứ tối đa nhưng không bao gồm dòng mới mà tôi nghĩ là a. sẽ làm. Ai đó có thể làm sáng tỏ những gì tôi đang thiếu.vba regex: dấu chấm phù hợp với dòng mới
Public Sub regexp()
Dim oRegExp As regexp
Dim oMatches As MatchCollection
Dim oMatch As Match
Dim sString As String
sString = _
"one" & vbNewLine & _
"two" & vbNewLine
Set oRegExp = New regexp
With oRegExp
.Global = True
.Pattern = ".+"
Set oMatches = .Execute(sString)
For Each oMatch In oMatches
Debug.Print "*" & oMatch.Value & "*"
Next oMatch
End With
End Sub
Output là
*one
*
*two
*
Dự kiến sản lượng
*one*
*two*
Làm thế nào tôi có thể tránh được xuống dòng trong đầu ra? Cảm ơn.
Đáng buồn thay, điều đó mang lại cho tôi cùng một đầu ra. – wfsp
Hãy thử '[^ \ n \ r]' thay thế - [tài liệu] (http://msdn.microsoft.com/en-us/library/microsoft.visualbasic.constants.vbnewline.aspx) gợi ý rằng 'vbNewLine' là chỉ có một ký tự dòng mới, nhưng tôi có một số hồi ức mơ hồ, nó thực sự là chuỗi ký tự dòng mới cụ thể cho hệ thống, bao gồm cả việc trả về vận chuyển trên Windows. – eggyal
Đó là nó, cảm ơn rất nhiều. Trường hợp thực sự là một tập tin văn bản và giải pháp của bạn hoạt động tốt trên đó quá. Một lần nữa cám ơn. – wfsp