我正在开发一个简单的2D游戏引擎,使用简单的脚本语言。 以下是脚本应如何显示的示例:
<a=AssetName>
<scripthere>
<script
<dialogue
contiue dialogue
<a2=AlternativeAssetName
<script>
我遇到的问题是如何从第一行(不一定是第一行)获取'AssetName'。做这个的最好方式是什么?正则表达式(从未使用它们,谷歌对如何使用它们没有帮助)?
我想在语言中允许它使用'&gt;'结束命令或者以新命令'&lt;'的开头。 所以字符串的定义如下:
"<a=" + (string)AssetName + (">" || "<")
提前谢谢你。 :)
答案 0 :(得分:0)
我会先注意上面的评论:) 但是,如果你仍想按照自己的方式行事,那么(在C#中)就是这样的:
string pattern = @"\< *a\=([^\<\>]+) *[\<\>]";
Regex r = new Regex(pattern, RegexOptions.IgnoreCase);
Match m = r.Match(tosearch);
if ( m.Success )
{
foreach (Group g in m.Groups)
{
Console.WriteLine("Group: " + g.Value);
}
}
else
{
Console.WriteLine("No matches");
}
Console.WriteLine();
//To keep the console window open after running the application, add the following lines of code:
System.Console.WriteLine("Press any key to Continue...");
System.Console.ReadLine();
在调试器中使用此代码,以便您可以满足您的需求 如果需要,请阅读有关正则表达式的更多here或here 希望这会有所帮助。