1

例子

G76 I0.4779 J270 K7 C90

X20 Y30

如果一个数字以 IJKCXY 开头并且没有小数,则添加小数。上面的示例应如下所示:

G76 I0.4779 J270 K7。C90。

X20。Y30。

此代码的目的是为较旧的 Fanuc OPC 控制器转换 CNC 代码

4

3 回答 3

2

Set RegEx = New RegExp
RegEx.Global = True
RegEx.Pattern = "([IJKCXY]\d+)([^\.]|$)"
newVar = RegEx.Replace (oldString, "$1.$2")

其中 oldString 是原始字符串,newVar 是添加了小数的字符串。

于 2008-10-03T15:50:23.277 回答
0
function convert(str)
    Set RegEx = New RegExp
    RegEx.Global = True
    RegEx.Pattern = "([IJKCXY]\d*\.?\d*)"
    Set Matches = regEx.Execute(str)

    For Each Match in Matches
        if instr(Match.value, ".") = 0 then
            str = Replace(str, Match.value, Match.value & ".")
        end if
    Next
    convert = str
end function
于 2008-10-03T16:12:57.303 回答
0

tloach仍然回答不起作用

韦恩斯工作,但也放了一个 . 在每次出现 IJKCXY 之后

如果 instr(Match.value, ".") = 0 那么我改变了

就像 if instr(Match.value, ".") = 0 and len(Match.value) > 1 then

于 2008-10-03T17:21:15.840 回答