MC2020刚刚发布正式版,
中文用户这就吃了第一个bug了。有中文输出的行结尾的换行符可能被覆盖。。。如下图
文件名有中文,最后面的换行符被覆盖了,
刀具名有中文,最后面的换行符被覆盖了,
实际上也有很多机床系统也并不支持中文如Fanuc,brother,有中文的话可能 根本传不进程序 或者运行中报警。
虽然 我们编程可以尽量避免使用中文来规避,但我们是中国人啊凭啥不能用中文=,=刀具名文件名全英文的,编程有时还真看不明白。
好在出程序的时候还得经过后处理这一过程MC2020的后处理新增加了一个regex函数,用code export 可查
这个函数对会C python什么的就比较熟悉了,中文名正则表达式,用来处理各种文本字符相当强大,比如从一堆文本中抓网址,电话号码什么的。
MC里的正则表达式,就我个人初步使用所用感觉还是阉割版,也就只有三个方法,匹配单个字符串,匹配整个字符串,替换字符串。
回到中文的问题上来,就MC正则表达式的这三个方法也就足够我们处理了。
#A-Z表示26个大写字母,
#+-/*//表示加减乘除,MP正则表达式转义字符是/
regex的三个用法都有用上了。
sreult返回按表达式sureg规则匹配的stemp里的最前面的字符,后面的舍弃
sreult返回按表达式sureg规则匹配的stemp的字符,但比较模式是和整个字符串相比较,也就是说setmp要完全匹配才有返回值和0模式下只返回第一次匹配的有所区别
解释完上面的再来看看这段源码怎么用
::找到所有可能有中文件的变量比如smcname$ 把输出 替换掉
比如Pheader文件头里的文件名输出
完了,使用规则 就把把源码复制到任意地方(不要问我任意是什么地方)再把需要限制的变量名修改一下,stext = 输出变量名, punchn,
交流请加人个微信号:SROBIN
希望我的回答对你有用。
文件夹里只是放置POST文件, 要修改,还是要在软件里设置
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。