我正在为Windows驱动程序inf文件编写解析器。它们与ini文件类似,但有些奇怪之处。
我现在正在努力的部分是,如果一行中的任何地方都包含;
,那么它就会被视为评论。
但是,如果它被"
包围,那么它就是一个字符串。 "
内的任何内容都是文字和实际字符串。
为了让事情变得更有趣,如果你想在字符串中有一个文字"
,你需要在它之前加上另一个"
。
换句话说:
"This is a string" ;This is a comment
"This is a string; which contains a semicolon"
"This is a string; which contains a semicolon" ;And a comment
"This is a string; which contains a semicolon and a double quote """
"These are", "two strings with ""double quotes""" ;And a comment
确定行中是否有注释以及从行中提取字符串的最简单方法是什么?
我想这可能是正则表达式,但不确定这是否是最好的方式,所以我对这些想法持开放态度。