我一直在寻找一种在Java源代码文件中查找带引号的文本字符串的简单方法。首先,我研究正则表达式。然后我意识到我有两个问题,因为正如thisanswer所说的那样,没有一个完全正确的正则表达式,类似于标记语言出现的问题。主要的问题是字符串中可能有转义引号。你知道吗
那么,我有什么方法来解析源代码文件以在其中找到字符串(可能带有转义引号)?有什么东西已经存在了吗?最好是用Python。你知道吗
编辑:下面是一些过于简化的示例代码。你知道吗
private static String[] b = {
foo("HG@\"rND"),
foo("K1\\"),
bar("ab\\\\\\\"")
}
任何反斜杠的组合都应该能够处理。所需的输出将是字符串本身。你知道吗
检测转义序列和引号组合\“,并用其他组合替换它。它很简单,然后提取引号中的其他内容
你可以这样使用:
但也有必要删除评论,这并不十分困难。或者看看Java parser。你知道吗
你知道吗 写一个简单的状态机怎么样?一个简单的例子(只有双引号字符串)可以是:
例如,如果需要,可以添加
STATE_INCOMMENT
这样的状态。你知道吗相关问题 更多 >
编程相关推荐