PHP正则表达式,用于破译英文和中文字符

PHP正则表达式,用于破译英文和中文字符,php,regex,cjk,Php,Regex,Cjk,我有一份中英文描述 我该如何使用正则表达式来表示,如果行包含一个汉字,那么执行a,否则执行B 这里的例子 电源: 110V/220W50-60HZ 功率:60W 光源:12V 150 W 尺寸:220x150x280mm 重量:2.3KG Voltage : 110V/220W50-60HZ Power : 60W Bulb : 12V 150 W Size : 220x150x280mm Weight:2.3KG 汉字在以下范围内:U+4E00..U+9FFF 如果您的expreg扩展

我有一份中英文描述

我该如何使用正则表达式来表示,如果行包含一个汉字,那么执行a,否则执行B

这里的例子

电源: 110V/220W50-60HZ
功率:60W
光源:12V 150 W
尺寸:220x150x280mm
重量:2.3KG



Voltage : 110V/220W50-60HZ
Power : 60W
Bulb : 12V 150 W
Size : 220x150x280mm
Weight:2.3KG

汉字在以下范围内:
U+4E00..U+9FFF

如果您的expreg扩展是使用Unicode支持构建的,
b\p{InCJK\u Unified\u Ideographs}
可以很好地替代
[\x{4E00}-\x{9FFF}]
(在Jens Struwe提供的链接中)

您可以在此处找到大多数(全部?)Unicode范围:


我不确定你想要实现什么,但也许一个好的开始就是把你的描述按行分开。然后,针对每一行,找出它是否是中文,并运行相应的正则表达式

如果编码为Unicode,则英文字母为代码0x0041至0x005B和0061至007B,中文字符为代码0x4E00-0x4FFF。您的正则表达式可能会检查字符代码匹配。为什么不搜索StackOverflow?您想将英文翻译成中文,还是通过regexp来区分它们?我真的不明白“脱衣舞”的部分。