C# &引用;名称(1)“;自定义文件中的挑战
所以,在我描述我的问题之前,你需要一些背景知识: 我有一些自定义文件,用文本描述一些对象。此文件的一行如下所示:C# &引用;名称(1)“;自定义文件中的挑战,c#,string,C#,String,所以,在我描述我的问题之前,你需要一些背景知识: 我有一些自定义文件,用文本描述一些对象。此文件的一行如下所示: ... ~ InWalls: [0](Name = "Wall", Pos = 1|2, Rot = 7) ~ ... 我的程序像这样读取这个文件 连接文件中的所有行 删除所有空格 以“~”分隔行 (每行) 4.1按“:”分割 4.2首先打开开关(在本例中为“内墙”) 4.3在第二个“(“,”)和子字符串之间查找(我们得到“Name=“Wall”,Pos=1 | 2,Rot=7”)
...
~
InWalls:
[0](Name = "Wall", Pos = 1|2, Rot = 7)
~
...
我的程序像这样读取这个文件
String.Split()
和String.SubString()
,而且一切正常。。但是如果我的绳子看起来像这样怎么办
...
~
InWalls:
[0](Name = "Wall (1)", Pos = 1|2, Rot = 7)
~
...
在第4.3步中,我将得到的不是“Name=”Wall(1)”,Pos=1 | 2,Rot=7”,而是“Name=”Wall(1),我不知道如何解决这个问题。我需要属性名“,我不能就这样把这部分删掉……有人对此有什么想法吗?我们需要实际的代码、输入/输出示例。请在问题中包含一个字符串,在编写字符串之前将其转义,在阅读后取消转义。例如%28=(,%29=)和%%For%.具有匹配的“开始”和“结束”分隔符的内容”需要一个堆栈来正确地“解析”…你对这种语法有多了解?为什么不使用类似的标准语法,比如已经编写了解析器的JSON?