[英]Escaping quotes automatically
我有一个文本文件,看起来像:
word("word1");
word("word2");
word("word3");
etc
(从网站复制)
我想编写一个Java程序来获取每个单词(word1,word2等)并将其放在String []中。 输出将是
my_list = {"word1", "word2" etc};
我想将原始输入放在方括号之间,使其成为字符串,然后对其进行处理,但是问题是我需要手动转义文件中的每个“”。
我该如何解决?
你为什么还要做word()? 如果不需要,请删除它,然后使文本文件如下所示:
word1
word2
word3
如果您实际上需要文本文件看起来像这样,请通过分割以下内容来读取每一行:
String thisWord = parsed.split("\"")[1];
您的意思是:
try {
String text = "word(\"word1\");\n"
+ "word(\"word2\");\n"
+ "word(\"word3\");\n"
+ "etc";
Pattern pattern = Pattern.compile("\".*?\"");
Matcher matcher = pattern.matcher(text);
ArrayList<String> list = new ArrayList<>();
while (matcher.find()) {
list.add(matcher.group(0));
}
StringBuilder out = new StringBuilder("my_list = {");
for (Iterator<String> iterator = list.iterator(); iterator.hasNext();) {
out.append(iterator.next());
if(iterator.hasNext())
out.append(", ");
}
out.append("};");
JOptionPane.showMessageDialog(null, out.toString());
} catch (PatternSyntaxException ex) {
// Syntax error in the regular expression
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.