參照這個:String issues. Format "First Last" to format "Last, First" with a twist正則表達式和字符串,我如何修復'在字符串中?
我對mos的名字有很好的功能。然而,我被困在名字中,在他們中間,即:O'Shane。我循環訪問數據集,將名稱傳遞給函數以修復它,然後返回固定名稱。但是,如果字符串中有'in',則會擾亂SQL語句。
下面是相關代碼:
strSql = ("update tbl set Name=" & "'" & strNewName & "'" & " where ID= " & "'" & ID & "'")
strNewName = NameFix(strName)
Public Function NameFix(ByVal strOriginalName As String) As String
Dim regex As New Regex("(?:(?:mr\.|miss|mrs|ms|by)\s+)?(\S+).*(?<=\s)(\S+)$", RegexOptions.IgnoreCase)
Dim strNewName As String = regex.Replace(strOriginalName, "$2, $1")
Return strNewName
我如何讓過去的「在名字?
tia!
感謝上
'
一個替代!好建議。我並不關心注入攻擊,因爲它不需要用戶輸入,它不是一個Web應用程序。另外,這只是對我來說,沒有其他人會使用它。所以,我甚至沒有想到使用參數作爲修復。 – JimB 2014-10-01 00:45:55@JimB習慣參數並且每次都使用它們。過了一段時間,你甚至不會再考慮字符串連接作爲可能的選項。即使你不關心安全性,查詢計劃緩存本身也應該是一個足夠好的理由。 – 2014-10-01 07:44:11
再次感謝。我打算使用PostgresQL數據庫(現在只使用訪問數據庫進行測試),不確定參數使用或查詢緩存是否與postgresql有關係 - 思路? – JimB 2014-10-02 01:25:15