请问大侠,VFP如何去掉一行字符中的括号及括号中内容?
请问大侠,VFP如何去掉一行字符中的括号及括号中内容?如:[01次]面包[02次]生菜 替换为 面包生菜
[01次]80,[02次]92, 替换为 80,92,
[此贴子已经被作者于2021-11-10 17:58编辑过]
[此贴子已经被作者于2021-11-10 17:58编辑过]
2021-11-10 17:57
2021-11-10 18:12
[此贴子已经被作者于2021-11-10 20:21编辑过]
2021-11-10 18:50
2021-11-10 19:49
2021-11-10 19:58
2021-11-10 20:31
程序代码:? fun("[01次]面包[02次]生菜") && 面包生菜
? fun("[01次]80,[02次]92") && 80,92
FUNCTION fun(s)
ret = ""
bg = .T.
FOR i=1 TO LEN(s)
ch = SUBSTR(s,i,1)
IF ch == "["
bg = .F.
LOOP
ELSE
IF ch == "]"
bg = .T.
LOOP
ENDIF
ENDIF
IF bg
ret = ret + ch
ENDIF
ENDFOR
RETURN ret
ENDFUNC
2021-11-10 21:20
[此贴子已经被作者于2021-11-10 21:27编辑过]
2021-11-10 21:21
程序代码:
s = "[01次]面包,[02次]生菜,[01次]80,[02次]92"
?fun(s)
FUNCTION fun(s)
p1 = AT("[",s)
p2 = AT("]",s)
DO WHILE p1>0 AND p2>p1
s = STUFF(s,p1,p2-p1+1,"")
p1 = AT("[",s)
p2 = AT("]",s)
ENDDO
RETURN s
ENDFUNC
2021-11-10 22:06
2021-11-10 22:08