贴个函数,判断是否全部为中文函数
本帖最后由 jun353835273 于 2024-6-11 19:18 编辑贴个函数,判断是否全部为中文函数
(defun ZZ:StringisChs(str / )
(vl-every '(lambda (X) (> X 128)) (vl-remove 32 (vl-string->liststr)) )
)
感觉比较精简就贴上来了,抛砖引玉。 本帖最后由 1291500406 于 2024-6-12 17:15 编辑
[*]贴个函数,判断是否全部为中文函数
[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif(defun ZZ:StringisChs(str / )
[*] (vl-every '(lambda (X) (> X 128)) (vl-remove 32 (vl-string->liststr)) )
[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif)
(ZZ:StringisChs "ノ")(wcmatch"ノ""*[\U+4e00-\U+9fff]*")の_百度百科 (baidu.com)
这句话并不是表明判断是否全部为中文函数 而是表明非字母的文字 而非字母也有可能是日文 韩文。
其他语言表明 汉字范围是 '\u4e00' <= char <= '\u9fff'
python
def is_chinese(char):
if '\u4e00' <= char <= '\u9fff':
return True
else:
return False
而 (wcmatch "要 的" "*[一-龥]*")是错的
龥字是9fa5 -9fff 有一 段空白区
(PRINT "\U+9fa5")
(PRINT "\U+9fa6")
测试
(wcmatch "\U+9fa5""*[一-龥]*")t
(wcmatch "\U+9fa6""*[一-龥]*")nil
应该是
命令: (PRINT "\U+4e00")
命令: (PRINT "\U+9fff")
判断是否全部为中文函数 包括空格
(wcmatch "要 的" "~*[~\U+4e00-\U+9fff ]*")
判断是否全部为中文函数 不包括空格
(wcmatch "要 的" "~*[~\U+4e00-\U+9fff]*")
判断是否存在中文函数
(wcmatch "要 的" "*[\U+4e00-\U+9fff]*")
自贡黄明儒 发表于 2024-6-12 09:29
我写过一个《判断字符串中是否有汉字》http://bbs.xdcad.net/forum.php?mod=viewthread&tid=706787&highlig ...
黄大师,你这个是参考正则的用法,但是*在lisp中,好像不是量词,lisp这块和vba正则表达式是一样的吗? 不错,函数都是作用大 大佬,介绍下运用场景 czb203 发表于 2024-6-11 22:33
大佬,介绍下运用场景
有些地方需要判断是不是用的中文,我是ssget w 发现精度有问题选了不该选的,但是不需要中文,干脆就搞个这个函数过滤,我看论坛的输入法切换的也有坚持原文字是否为中文的,为中文就切换为中文。 jun353835273 发表于 2024-6-11 22:57
有些地方需要判断是不是用的中文,我是ssget w 发现精度有问题选了不该选的,但是不需要中文,干脆就搞个 ...
:$谢谢大佬答疑解惑 32什么意思? 我写过一个《判断字符串中是否有汉字》http://bbs.xdcad.net/forum.php?mod=viewthread&tid=706787&highlight=%E6%B1%89%E5%AD%97 自贡黄明儒 发表于 2024-6-12 09:29
我写过一个《判断字符串中是否有汉字》http://bbs.xdcad.net/forum.php?mod=viewthread&tid=706787&highlig ...
(wcmatch "要 的" "*[一-龥]*")确实精简,比较好奇你这是咋想到的 很是不错的东西啊
页:
[1]
2