找回密码
 加入
搜索
查看: 1828|回复: 5

正则匹配一个汉字

[复制链接]
发表于 2008-11-11 22:30:35 | 显示全部楼层 |阅读模式
$x=StringRegExp("中",'^[\u4e00-\u9fa5]$',0)
MsgBox(0,"",$x)
始终不成功,希望懂的朋友帮帮忙。

[ 本帖最后由 bing614 于 2008-11-12 02:18 编辑 ]
发表于 2008-11-11 22:40:35 | 显示全部楼层
example
匹配汉字“人民”

$a="中华人民共和国"
$b=StringRegExp($a,"(?<=中华).*(?=共和国)",2)
MsgBox(0,"",$b[0])
 楼主| 发表于 2008-11-11 22:47:04 | 显示全部楼层
我想匹配任一汉字,又应该如何写呢?能否不用Unicode 字符呢
发表于 2008-11-11 23:42:25 | 显示全部楼层
没人来我来写个,呵呵
$nOffset = 1
$Result = ""
While 1
$array = StringRegExp("12ss3我123aaa爱423ss中ff54国dd4567",'[^\x00-\xff]+',2,$nOffset)
If @error = 0 Then
        $nOffset = @extended
    Else
        ExitLoop
    EndIf
    for $i = 0 to UBound($array) - 1
        $Result=$Result&$array[$i]
       MsgBox(0,"",$Result)
    Next
WEnd

这样可以一个汉字一个汉字的循环匹配,上面那个正则的意思是匹配 双字节字符

[ 本帖最后由 rho123 于 2008-11-11 23:45 编辑 ]
 楼主| 发表于 2008-11-12 02:18:13 | 显示全部楼层
非常感谢楼上的朋友。
发表于 2009-10-13 17:58:23 | 显示全部楼层
学习了 谢谢
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-5 00:05 , Processed in 0.072299 second(s), 19 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表