49 lines
1.9 KiB
VB.net
49 lines
1.9 KiB
VB.net
Imports System.Text
|
|
Imports System.Text.RegularExpressions
|
|
|
|
Public Class ClassHelper
|
|
Public Shared Function encode_utf8(ByVal str As String) As String
|
|
Try
|
|
'supply True as the construction parameter to indicate
|
|
'that you wanted the class to emit BOM (Byte Order Mark)
|
|
'NOTE: this BOM value is the indicator of a UTF-8 string
|
|
Dim utf8Encoding As New System.Text.UTF8Encoding(True)
|
|
Dim encodedString() As Byte
|
|
encodedString = utf8Encoding.GetBytes(str)
|
|
If LogErrorsOnly = False Then ClassLogger.Add(String.Format(" >> String {0} was encoded via utf8 to {1}", str, utf8Encoding.GetString(encodedString)), False)
|
|
Return utf8Encoding.GetString(encodedString)
|
|
Catch ex As Exception
|
|
ClassLogger.Add("Unexpected error in encode_utf8: " & ex.Message)
|
|
Return Nothing
|
|
End Try
|
|
|
|
End Function
|
|
Public Shared Function StringAsUtf8Bytes(ByVal strData As String) As Byte()
|
|
Try
|
|
Dim bytes() As Byte
|
|
' get unicode string as bytes
|
|
bytes = Encoding.UTF8.GetBytes(strData)
|
|
' return byte data
|
|
Return bytes
|
|
Catch ex As Exception
|
|
ClassLogger.Add("Unexpected error in StringAsUtf8Bytes: " & ex.Message)
|
|
Return Nothing
|
|
End Try
|
|
|
|
End Function
|
|
Public Shared Function CheckSpecialSigns(ByVal str As String)
|
|
Try
|
|
Dim pattern As String = "[!""#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~\s]"
|
|
Dim matches As MatchCollection = Regex.Matches(str, pattern)
|
|
Return matches.Count
|
|
Catch ex As Exception
|
|
ClassLogger.Add("Unexpected error in CheckSpecialSigns: " & ex.Message)
|
|
Return 0
|
|
End Try
|
|
End Function
|
|
Public Shared Sub Refresh_RegexTable()
|
|
CURRENT_DT_REGEX = ClassDatabase.Return_Datatable("SELECT * FROM TBGI_FUNCTION_REGEX")
|
|
End Sub
|
|
|
|
End Class
|