英文标点符号替换成中文标点符号函数-咱家是猫
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-模块/函数/VBA


英文标点符号替换成中文标点符号函数

发表时间:2010/7/6 9:49:45 评论(1) 浏览(14791)  评论 | 加入收藏 | 复制
   
摘 要:英文标点符号替换成中文标点符号函数
正 文:

常规标点好办点,单引用与双引号有点困难

Private Function enTozhMark(ReplaceStr As String) As String
'把传递进来的字符串中的英文标点符号替换成中文标点符号
'作者:咱家是猫 QQ:130036500
    Const enStr As String = ",.?;:!()"
    Const zhStr As String = ",。?;:!()"
    Dim I As Byte, L As Integer, B As Boolean, N As Integer
   
    enTozhMark = ReplaceStr
    '替换常规标点符号
    For I = 1 To 8
        enTozhMark = Replace(enTozhMark, Mid(enStr, I, 1), Mid(zhStr, I, 1))
    Next I
    '替换双引号
    N = 0: B = False
    L = Len(enTozhMark)
    For I = 1 To L
        N = InStr(N + 1, enTozhMark, Chr(34))
        If N <> 0 Then
            I = N
            If B = False Then
                enTozhMark = Left(enTozhMark, N - 1) & "“" & Mid(enTozhMark, N + 1)
            Else
                enTozhMark = Left(enTozhMark, N - 1) & "”" & Mid(enTozhMark, N + 1)
            End If
            B = Not B
        Else
            Exit For
        End If
    Next I
    '替换单引号
    N = 0: B = False
    For I = 1 To L
        N = InStr(N + 1, enTozhMark, Chr(39))
        If N <> 0 Then
            I = N
            If B = False Then
                enTozhMark = Left(enTozhMark, N - 1) & "‘" & Mid(enTozhMark, N + 1)
            Else
                enTozhMark = Left(enTozhMark, N - 1) & "’" & Mid(enTozhMark, N + 1)
            End If
            B = Not B
        Else
            Exit For
        End If
    Next I
   
End Function


Access软件网交流QQ群(群号:198465573)
 
 相关文章
【Access入门】设置常见世界货币符号格式的示例,美元符号,欧元...  【麥田  2012/10/17】
【示例组合】复制粘贴后加标点符号进行个数统计  【天外流星  2012/10/20】
去除多余符号  【纵云梯  2012/12/8】
中文模式下固定使用英文标点  【张崛  2013/3/24】
取两个不同符号之间的数据  【宏鹏  2013/4/24】
常见问答
技术分类
相关资源
文章搜索
关于作者

咱家是猫

文章分类

文章存档

友情链接