请问有没有自动提取格式化字符串的函数?或者提取ini文件中的数据?(5分)

  • 主题发起人 主题发起人 16cy
  • 开始时间 开始时间
1

16cy

Unregistered / Unconfirmed
GUEST, unregistred user!
如:
狮驼岭车夫=地图(狮驼岭),坐标(46,7),范围(5),名称(车夫),固定(1),方向(2)
我想把这串ini文件中的“地图(狮驼岭),坐标(46,7),范围(5),名称(车夫),固定(1),方向(2)”括号里的内容分别提取出来:

map:='狮驼岭'; zb:=46,7; hw:=5; name:='车夫';guding:=1; fx:=2

请问,delphi里面有专门的这种函数吗?
 
用TIniFile来操作,借助Pos()及Copy()两个函数就可以做到啊
 
现成的没有
你可以试用TStringList自带的方法按逗号拆分 然后找到左右括号的位置截取

或者使用正则表达式
 
就是嫌用pos 和 copy麻烦啊。
另外这个长度是不是的,例如:
青楼老板=地图(怜香轩),坐标(22,7),范围(5),偏移(0),固定(1)
梅花仙=地图(长安城东),坐标(88,277),范围(10),路径(88,272),路径(105,272),路径(120,275),路径(130,275)
青楼老板和梅花仙的就不同。
 
怕麻烦就没办法了,不过想编程就不能怕麻烦。

用Pos, Copy, MidStr等字符串处理函数解析读取的字符串。其实我看主要就在解析出的数据如何存放上,设计一个合理的数据结构,这样就可以写一个通用的方法解析字符串了。
 
通用的方法可以用正则表达式,不过效率可能不太高。
自己Pos,Copy效率比较高,就是麻烦。
 
接受答案了.
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
791
import
I
后退
顶部